📜  Node.js process.argv 属性(1)

📅  最后修改于: 2023-12-03 15:17:55.196000             🧑  作者: Mango

Node.js process.argv 属性

在 Node.js 中,process.argv 属性存储了命令行参数,它是一个数组,第一个元素是 Node.js 的可执行文件路径,第二个元素是当前执行的 JavaScript 文件的路径,之后的元素是命令行中提供的所有参数。

使用方法

在一个命令行启动的 Node.js 应用中,可以使用 process.argv 访问命令行参数。

例如,要在命令行中运行一个名为 index.js 的文件,并传入一个名为 name 的参数,可以这样做:

node index.js --name John

在 index.js 文件中可以使用以下代码来访问这个参数:

const args = process.argv.slice(2);
const name = args[0].split('=')[1];
console.log(`Hello, ${name}!`);

在命令行中执行这个文件后,会输出以下内容:

Hello, John!

第一行代码 const args = process.argv.slice(2); 会把数组中前两个元素(即 Node.js 的可执行文件路径和当前执行的 JavaScript 文件的路径)去除掉,这样 args 数组中就只剩下命令行传入的参数了。然后再使用 args[0].split('=')[1] 提取出参数的值。

示例

在下面的示例中,我们将传入两个参数,分别是数字 10 和 20。然后我们会在控制台中输出这两个数字的和。

const args = process.argv.slice(2);
const num1 = parseInt(args[0]);
const num2 = parseInt(args[1]);
const sum = num1 + num2;
console.log(`The sum of ${num1} and ${num2} is ${sum}.`);

在命令行中执行以下命令:

node index.js 10 20

输出结果为:

The sum of 10 and 20 is 30.
总结

process.argv 属性是 Node.js 命令行应用程序中非常有用的一个属性。它可以让我们轻松地访问命令行参数,并在程序中使用这些参数。如果你希望编写一个需要从命令行接收参数的应用程序,那么 process.argv 属性一定会非常有用。