Node.js:process.argv与process.ARGV
我注意到Node定义了process.argv
和process.ARGV
(大写)。 后者在文档中没有提到,在任何情况下,我都遇到了同样的对象。
ARGV
只是一个历史性的搁置,还是它有一个目的?
自v0.5.10
以来, v0.5.10
已被完全 v0.5.10
。
它们是相同的:
node.cc
// process.argv Local<Array> arguments = Array::New(argc - option_end_index + 1); arguments->Set(Integer::New(0), String::New(argv[0])); for (j = 1, i = option_end_index; i < argc; j++, i++) { Local<String> arg = String::New(argv[i]); arguments->Set(Integer::New(j), arg); } // assign it process->Set(String::NewSymbol("ARGV"), arguments); process->Set(String::NewSymbol("argv"), arguments);
编辑 (基于进一步的问题):
只有一个人可以肯定地告诉你(作者) – 你可能能够在IRC上find他( irc.freenode.net #node.js
)。
通过其他符号来看,我猜测它是为了一致性而添加的 – argv
和env
似乎是唯一的两个同时具有小写和大写的版本。 但是, ENV
与env
略有不同。 也许作者认为argv
和ARGV
可能与env
和ENV
相同?
- Node.js拦截process.exit
- 浏览捆绑电子应用程序的主要进程文件
- 即使使用sudo nohup后,Amazon EC2 NodeJS服务器也会在2天后自行停止
- 在使用process.exit() – 节点js时,Winston日志文件并不总是保存
- 在Node.js中运行asynchronous进程
- Node.js:在Linux中观察进程以了解状态更改
- 如何从一个nodejssubprocess获得cwd(当前工作目录)(在windows和linuxish中)
- 写入node.js中的process.stdin并parsing行的最佳方法是?
- NodeJS分叉进程(1个VM,多个处理器)VS多个VM,1个进程