[英]Format the output of process.argv
我正在尝试学习 NodeJS,最近我一直在使用 NodeJS 内置函数,特别是process.argv
使用下面的代码,我想打印出Welcome, John Smith
process.argv.forEach((name) => {
console.log('Welcome, '+`${name}`+'!',);
});
但是 output 是:
Welcome, /usr/local/bin/node!
Welcome, /Users/johnsmith/Desktop/Webbut/NodeJS/5/index.js!
Welcome, Jon!
johnsmith:5 johnsmith$
当我只想打印一行时,是什么导致了这个 output?
argv
或argument vector
是一个数组,其中包含运行程序的部分命令。 并且由于您使用的是forEach
,它正在遍历argv
数组并在每个元素前面加上Welcome,
argv[0]
是/usr/local/bin/node
因为那是运行 javascript 的实际程序
argv[1]
是<path to your file>/index.js
因为这是传递给 node.js 作为节点运行的文件的参数
argv[2]
是Jon
,因为这是您作为参数传递给脚本的内容
process.argv.forEach
包含的不仅仅是您刚刚传递的内容,请参阅https://nodejs.org/docs/latest/api/process.html#process_process_argv
process.argv 属性返回一个数组,其中包含在启动 Node.js 进程时传递的命令行 arguments。 第一个元素是 process.execPath。 如果需要访问 argv[0] 的原始值,请参见 process.argv0。 第二个元素是正在执行的 JavaScript 文件的路径。 其余元素将是任何附加的命令行 arguments。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.