Com passar arguments des de la línia d'ordres a Node.js?

Com Passar Arguments Des De La Linia D Ordres A Node Js



En alguns casos, l'usuari ha de passar informació addicional per configurar l'aplicació Node.js durant el procés d'inici des de la línia d'ordres. Per fer-ho, l'usuari passa aquesta informació amb l'ordre d'execució ' node ” en lloc d'escriure-ho a l'exterior '.js' fitxer en el qual està escrit tot el codi font. Aquesta informació pot ser una cadena, números, arguments i molt més.

Aquesta publicació enumerarà tots els aspectes possibles per passar arguments des de la línia d'ordres a Node.js.







Requisits previs: Abans de passar a la implementació pràctica de qualsevol mètode, primer, creeu un '. js ” amb qualsevol nom i escriu-hi tot el codi font. Aquí, hem creat un ' índex fitxer .js”.



Com passar arguments des de la línia d'ordres a Node.js?

Per passar arguments des de la línia d'ordres, utilitzeu el ' procés propietat .argv”. El ' argv ' és la propietat integrada del ' procés ” mòdul que s'utilitza per passar els arguments de la línia d'ordres mentre s'executa l'aplicació Node.js mitjançant el “ node ' comandament.



Sintaxi

La sintaxi generalitzada del ' procés La propietat .argv s'escriu aquí:





procés. argv

Paràmetres: El ' procés .argv” és una propietat que no admet cap paràmetre.

Valor de retorn: El ' procés .argv” proporciona una matriu com a sortida estàndard que conté els elements següents:



  • process.argv[0]: Representa la ruta del fitxer executable.
  • process.argv[1]: Denota el camí del “. js ' dossier.
  • process.argv[2]: Especifica el primer argument que es passa juntament amb el ' node ' comandament.
  • process.argv[3]: Especifica el segon argument que es passa juntament amb el ' node ' comandament.

Nota : Els dos primers elements sempre es mostren per defecte mentre s'utilitza 'procés.argv' propietat fins i tot si l'usuari no passa cap argument.

Ara, apliqueu el ' procés .argv” pràcticament per passar arguments des de la línia d'ordres.

Exemple 1: aplicació de la propietat 'process.argv' per passar arguments de cadena des de la línia d'ordres

Aquest exemple aplica el ' procés.argv ” propietat per passar cadenes com a arguments des de la línia d'ordres amb l'ajuda del bloc de codi proporcionat a continuació:

per ( deixa jo = 0 ; i < procés. argv . llargada ; ++ i ) {
consola. registre ( `índex $ { i } argument -> $ { procés. argv [ i ] } ` ) ;
}

A les línies de codi anteriors:

  • El ' per ” el bucle es defineix amb una condició inicialitzada i una instrucció d'increment.
  • En el ' per condició del bucle, el ' procés.argv La propietat està concatenada amb la propietat llargada ” per aconseguir que cada valor de l'argument passi juntament amb el “ node ' comandament.
  • Dins del ' per 'bucle, el' console.log() ” El mètode mostra cada valor d'argument juntament amb el seu índex.

Sortida

Executeu el ' índex .js' mitjançant l'ordre següent i també passa les cadenes com a argument amb ell:

índex de nodes. js Benvingut a Linuxhint

La sortida següent mostra primer l'executable i el fitxer '. js ” el camí del fitxer i, a continuació, mostra les cadenes que es passen com a arguments juntament amb els seus índexs:

Exemple 2: aplicació de la propietat “process.argv” per afegir dos números passats com a arguments

Aquest exemple realitza una operació d'addició aritmètica sobre dos nombres que es passen com a arguments:

era arguments = procés. argv
funció afegir ( a , b ) {
tornar parseInt ( a ) + parseInt ( b )
}
era suma = afegir ( arguments [ 2 ] , arguments [ 3 ] )
consola. registre ( 'La suma d'1, 9 és' , suma )

Al fragment de codi anterior:

  • El ' arguments La variable utilitza la variable procés .argv” per agafar arguments de la línia d'ordres.
  • A continuació, el ' afegir ()' funció amb ' a', i 'b '' aplica el ' parseInt ()” mètode que analitza el valor introduït per l'usuari com a cadena i recupera el primer nombre enter.
  • Després d'això, el ' suma ', la variable anomena ' afegir ()' passant la funció ' argument [2]', i el ' argument [3]' de la ' procés propietat .argv”.
  • Finalment, el ' consola El mètode .log()' mostra el ' suma ” valors variables com a primer i segon element de la matriu retornada.

Sortida

Iniciar el ' índex .js” i passa els números com a arguments que l'usuari vol afegir:

índex de nodes. js 1 9

La sortida mostra l'addició dels dos números que es passen com a arguments mentre s'executa l'aplicació Node.js:

Exemple 3: aplicació de la propietat “process.argv” per imprimir només els arguments passats

Aquest exemple exclou els dos primers elements predeterminats de la matriu retornada del ' progrés, progressar .argv” i imprimeix tots els arguments passats:

const arguments = procés. argv . llesca ( 2 ) ;
arguments. per cadascú ( ( valor , índex ) => {
consola. registre ( índex , valor ) ;
} ) ;

L'explicació de les línies de codi anteriors és la següent:

  • En primer lloc, el ' arguments 'La variable aplica la ' procés .argv' juntament amb la propietat ' llesca ()” mètode per excloure els dos primers elements de la matriu retornada.
  • A continuació, el ' per cadascú ()' passa una funció de fletxa amb el ' valor ' i ' índex ” com el seu primer i segon argument respectivament. Mostrarà tots els elements de la matriu un per un a la pantalla de sortida.
  • Finalment, el ' consola El mètode .log()' mostra el valor del ' índex ”, i “ valor ” paràmetres.

Sortida

Executar el ' índex .js” i també passa els arguments de la cadena amb l'ordre que s'indica a continuació:

índex de nodes. js Benvingut a Linuxhint

Ara, la sortida següent només mostra els arguments passats juntament amb els seus índexs:

Això es tracta de passar arguments des de la línia d'ordres.

Conclusió

Node.js ofereix el ' procés .argv” per passar els arguments de l'usuari des de la línia d'ordres. Aquesta propietat proporciona una matriu que conté l'executable i el fitxer '. js ' ruta del fitxer a ' ' i la ' 1r ” índexs i els arguments passats a “ 2n ' i ' 3r ” índexs. Aquesta propietat permet als usuaris passar tant valors de cadena com numèrics com a argument des de la línia d'ordres. Aquesta publicació pràcticament ha explicat tots els possibles aspectes de passar arguments des de la línia d'ordres a Node.js.