我有一个用Node.js编写的网络服务器,我想用一个特定的文件夹来启动。我不确定如何在JavaScript中访问参数。我是这样运行node的。
$ node server.js folder
这里 server.js
是我的服务器代码。Node.js的帮助说这是可能的。
$ node -h
Usage: node [options] script.js [arguments]
我如何在JavaScript中访问这些参数?不知为何,我无法在网上找到这些信息。
参数被存储在process.argv
中。
process.argv
是一个包含命令行参数的数组。第一个元素是'node',第二个元素是JavaScript文件的名称。接下来的元素将是任何额外的命令行参数。
// print process.argv
process.argv.forEach(function (val, index, array) {
console.log(index + ': ' + val);
});
这将产生。
$ node process-2.js one two=three four
0: node
1: /Users/mjr/work/node/process-2.js
2: one
3: two=three
4: four
为了使参数像普通的javascript函数一样正常化,我在我的node.js shell脚本中这样做。
var args = process.argv.slice(2);
注意,第一个参数通常是nodejs的路径,第二个参数是你正在执行的脚本的位置。