首页 > 代码库 > nodeJs-process对象

nodeJs-process对象

  • JavaScript 标准参考教程(alpha)

  • 草稿二:Node.js
  • GitHub 
  • TOP 

process对象

来自《JavaScript 标准参考教程(alpha)》,by 阮一峰

目录

process对象是Node的一个全局对象,提供当前Node进程的信息。它可以在脚本的任意位置使用,不必通过require命令加载。该对象部署了EventEmitter接口。

进程的退出码

进程退出时,会返回一个整数值,表示退出时的状态。这个整数值就叫做退出码。下面是常见的Node进程退出码。

  • 0,正常退出
  • 1,发生未捕获错误
  • 5,V8执行错误
  • 8,不正确的参数
  • 128 + 信号值,如果Node接受到退出信号(比如SIGKILL或SIGHUP),它的退出码就是128加上信号值。由于128的二进制形式是10000000, 所以退出码的后七位就是信号值。

Bash可以使用环境变量$?,获取上一步操作的退出码。

$ node nonexist.js
Error: Cannot find ‘nonexist.js‘

$ echo $?
1

上面代码中,Node执行一个不存在的脚本文件,结果报错,退出码就是1。

属性

process对象提供一系列属性,用于返回系统信息。

  • process.argv:返回当前进程的命令行参数数组。
  • process.env:返回一个对象,成员为当前Shell的环境变量,比如process.env.HOME
  • process.installPrefix:node的安装路径的前缀,比如/usr/local,则node的执行文件目录为/usr/local/bin/node
  • process.pid:当前进程的进程号。
  • process.platform:当前系统平台,比如Linux。
  • process.title:默认值为“node”,可以自定义该值。
  • process.version:Node的版本,比如v0.10.18。

下面是主要属性的介绍。

stdout,stdin,stderr

以下属性指向系统I/O。

(1)stdout

stdout属性指向标准输出(文件描述符1)。它的write方法等同于console.log,可用在标准输出向用户显示内容。

console.log = function(d) {
  process.stdout.write(d + ‘\n‘

nodeJs-process对象