Node 命令
在系统中安装完 Node.js 后,Node.js 会提供一个名为node
的程序,该程序用于执行 JavaScript 文件。假设你有一个文件 hello.js,该文件会包含以下代码。
let message = "Hello world";
console.log(message);
读者可以仿照下面这种方式通过命令行执行程序。
$ node hello.js
Hello world
Node 中的console.log
方法与浏览器中所做的类似,都用于打印文本片段。但在 Node 中,该方法不会将文本显示在浏览器的 JavaScript 控制台中,而显示在标准输出流中。从命令行运行node
时,这意味着你会在终端中看到记录的值。
若你执行node
时不附带任何参数,node
会给出提示符,读者可以输入 JavaScript 代码并立即看到执行结果。
$ node
> 1 + 1
2
> [-1, -2, -3].map(Math.abs)
[1, 2, 3]
> process.exit(0)
$
process
绑定类似于console
绑定,是 Node 中的全局绑定。该绑定提供了多种方式来监听并操作当前程序。该绑定中的exit
方法可以结束进程并赋予一个退出状态码,告知启动node
的程序(在本例中时命令行 Shell),当前程序是成功完成(代码为 0),还是遇到了错误(其他代码)。
读者可以读取process.argv
来获取传递给脚本的命令行参数,该绑定是一个字符串数组。请注意该数组包括了node
命令和脚本名称,因此实际的参数从索引 2 处开始。若showargv.js
只包含一条console.log(process.argv)
语句,你可以这样执行该脚本。
$ node showargv.js one --and two
["node", "/tmp/showargv.js", "one", "--and", "two"]
所有标准 JavaScript 全局绑定,比如Array
、Math
以及JSON
也都存在于 Node 环境中。而与浏览器相关的功能,比如document
与alert
则不存在。