Como funciona o processo Argv em Node.js?

Como Funciona O Processo Argv Em Node Js



Na maioria dos casos de acordo com a necessidade da aplicação, o usuário precisa passar algumas informações durante sua execução junto com o  “ ” comando. Neste cenário, o usuário não pode adicionar essas informações necessárias dentro do arquivo “. js ”Arquivo no qual todo o código-fonte é escrito. As informações adicionais necessárias dependem do requisito, que pode ser uma string, números, argumentos e muito mais.

Este post dará uma demonstração do funcionamento do “ processo.argv ”propriedade em Node.js.







Como funciona “process.argv” em Node.js?

O ' argumento ”É a propriedade interna do“ processo ”módulo. Seu principal objetivo é recuperar os argumentos que são passados ​​​​com o “ ”Comando através da linha de comando.



Sintaxe

A sintaxe básica do “ processo.argv ”A propriedade é a seguinte:



processo. argumento

Enquanto o ' processo.argv ”É uma propriedade por isso não necessita de nenhum parâmetro adicional para realizar sua tarefa principal.





Valores de retorno: O ' processo.argv ”A propriedade fornece uma matriz como saída padrão que consiste nos seguintes elementos:

  • processo.argv[0]: Especifica o caminho do arquivo executável.
  • processo.argv[1]: Representa o caminho do “. js ' arquivo.
  • processo.argv[2]: Funciona como o primeiro argumento passado junto com o “ ” comando.
  • processo.argv[3]: Funciona como o segundo argumento que é passado junto com o “ ” comando.

Depois de obter o básico do “ processo.argv ”propriedade, vamos passar à sua implementação prática.



Exemplo 1: Aplicando a propriedade “process.argv” para fazer com que os números sejam passados ​​​​como argumentos

Este exemplo utiliza o “ processo.argv ”Propriedade para obter os argumentos numéricos passados ​​para realizar a operação de adição neles:

era argumentos = processo. argumento
função adicionar ( a , b ) {
retornar analisarInt ( a ) + analisarInt ( b )
}
era soma = adicionar ( argumentos [ 2 ] , argumentos [ 3 ] )
console. registro ( 'Adição de 23, 24 é' , soma )

A explicação das linhas de código acima é a seguinte:

  • Em primeiro lugar, o “ era ”A palavra-chave inicializa uma variável “argumentos” que utiliza a palavra-chave “ processo.argv ”Propriedade para passar os números como argumentos da linha de comando.
  • A seguir, defina uma função chamada “ adicionar ()' tendo ' a” e “b ”parâmetros.
  • Dentro da função, o “ analisarInt ()” analisa o valor inserido pelo usuário como uma string e recupera seu primeiro número inteiro.
  • Depois disso, o “ era ”A palavra-chave inicializa o“ soma ”Variável que invoca o“ adicionar ()” passando a função “ argumento [2]”, e o “ argumento [3]” do “ processo.argv ' propriedade.
  • Por último, o “ console.log ()” imprime o resultado adicional dos números passados ​​​​armazenados no “ soma ' variável.

Saída

Agora, execute o “ aplicativo .js” e passe os dois números junto com ele para realizar a operação de adição:

aplicativo de nó. js 23 24

A saída abaixo mostra o resultado da adição dos números passados ​​como argumentos:

Exemplo 2: Aplicando a propriedade “process.argv” para que a string seja passada como argumento

Este exemplo aplica o “ processo.argv ”Propriedade para obter os argumentos de string que são passados ​​​​ao iniciar o aplicativo Node.js:

para ( deixe j = 0 ; j < processo. argumento . comprimento ; ++ j ) {
console. registro ( `$ { j } -> $ { processo. argumento [ j ] } ` ) ;
}

Nas linhas de código escritas acima:

  • Defina um “ para ”Loop com uma instrução inicializada, condição e uma instrução de incremento.
  • No ' para ”Condição do loop, o“ processo.argv ”propriedade é concatenada com o“ comprimento ”Propriedade para obter cada argumento que é passado junto com o“ ” comando.
  • Dentro de ' para ”loop, o“ console.log() ”O método mostra cada argumento de string junto com um índice.

Saída

Execute o “ aplicativo .js” do projeto Node.js:

aplicativo de nó. js olá Linuxhint

A saída a seguir retorna um “ variedade ” que especifica o executável e o “. js ”caminho do arquivo e as strings junto com seus índices:

Exemplo 3: Aplicando a propriedade “process.argv” com o método Array “slice()”

O ' processo.argv ”A propriedade sempre fornece os dois primeiros elementos definidos (caminhos do executável e do arquivo “. js ”Arquivo) por padrão, independentemente de o usuário passar um argumento ou não.

Para excluir esses elementos da saída, use o “ processo.argv ”propriedade junto com a matriz“ fatiar ()” método:

const argumentos = processo. argumento . fatiar ( 2 ) ;
argumentos. para cada ( ( valor , índice ) => {
console. registro ( índice , valor ) ;
} ) ;

A descrição das linhas de código acima é indicada aqui:

  • O inicializado “ argumentos ”variável concatena o“ processo.argv ”propriedade junto com o“ fatiar ()”método para excluir os dois primeiros elementos do array retornado.
  • A seguir, o “ para cada ()” passa uma função de seta com o “ valor ' e ' índice ”Como seu primeiro e segundo argumentos, respectivamente. Ele exibirá todos os elementos do array um por um na tela de saída.
  • Por último, o “ console.log ()” exibe o valor do “ índice ', e ' valor ”parâmetros.

Saída

Inicie o “ índice .js” e também passe os argumentos desejados junto com o comando indicado abaixo:

aplicativo de nó. js Site Linuxhint

Aqui, a saída fornece uma matriz que contém apenas os argumentos especificados e não os dois primeiros elementos definidos da propriedade “process.argv”:

Isso é tudo sobre o funcionamento do “ processo.argv ”propriedade em Node.js.

Conclusão

Para trabalhar com o Node.js “ processo.argv ”A propriedade segue sua sintaxe básica que é igual à sua convenção de nomenclatura. Ele executa sua funcionalidade principal que é recuperar os argumentos passados ​​sem especificar nenhum parâmetro adicional. Ele retorna um “ variedade ” como sua saída padrão que contém o executável e o arquivo “. js ”caminho do arquivo no“ ' e a ' ”Índices e os argumentos passados ​​​​no“ 2º” e “3º ”índices. Este post praticamente explicou o funcionamento do “ processo.argv ”propriedade em Node.js.