[英]Node.js: process.argv vs. process.ARGV
我注意到 Node 定义了process.argv
和process.ARGV
(大写)。 文档中没有提到后者,并且到目前为止我遇到的每种情况都是相同的 object。
ARGV
只是历史性的保留,还是有目的?
process.ARGV
自v0.5.10
以来已被完全删除。
它们是相同的:
节点.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 上找到他( irc.freenode.net #node.js
)。
查看其他符号,我猜它是为了保持一致性而添加的 - argv
和env
似乎是仅有的两个同时具有小写和大写版本的。 但是, ENV
与env
略有不同。 也许作者认为argv
和ARGV
可能以与env
和ENV
相同的方式不同?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.