process.exitCode
- 类型: <integer> | <string> | <null> | <undefined> 退出代码。对于字符串类型,只允许整数形式的字符串(例如:'1')。默认值:
undefined。
一个数字,当进程正常退出或通过 process.exit() 终止但未指定代码时,该数字将作为进程的退出码。
【A number which will be the process exit code, when the process either
exits gracefully, or is exited via process.exit() without specifying
a code.】
process.exitCode 的值可以通过以下两种方式更新:要么给 process.exitCode 赋值,要么向 process.exit() 传递一个参数:
【The value of process.exitCode can be updated by either assigning a value to
process.exitCode or by passing an argument to process.exit():】
$ node -e 'process.exitCode = 9'; echo $?
9
$ node -e 'process.exit(42)'; echo $?
42
$ node -e 'process.exitCode = 9; process.exit(42)'; echo $?
42 当发生无法恢复的错误时(例如遇到未解决的顶层 await),Node.js 也可以隐式地设置该值。然而,对退出代码的显式操作始终优先于隐式设置:
【The value can also be set implicitly by Node.js when unrecoverable errors occur (e.g. such as the encountering of an unsettled top-level await). However explicit manipulations of the exit code always take precedence over implicit ones:】
$ node --input-type=module -e 'await new Promise(() => {})'; echo $?
13
$ node --input-type=module -e 'process.exitCode = 9; await new Promise(() => {})'; echo $?
9