node.js中方法process.exit(1)和process.exit(0)之间有什么区别?

Dev*_*yal 13 node.js

在Node.js的应用我看到的这两种方法的使用process.exit(1)process.exit(0).任何人都可以给我确切的答案吗?

Tom*_* O. 22

当没有更多异步操作挂起时,节点通常以0状态代码退出.还有其他退出代码,如下所述:

1 - 未捕获的致命异常:有一个未捕获的异常,它不是由域或uncaughtException事件处理程序处理的.

2 - 未使用:由Bash保留用于内置滥用.

3 - 内部JavaScript解析错误:Node的引导过程内部的JavaScript源代码导致解析错误.这种情况极为罕见,通常只能在Node本身的开发过程中发生.

4 - 内部JavaScript评估失败:Node的引导过程内部的JavaScript源代码在评估时未能返回函数值.这种情况极为罕见,通常只能在Node本身的开发过程中发生.

5 - 致命错误:V8中存在致命的不可恢复错误.通常,将使用前缀FATAL ERROR将消息打印到stderr.

6 - 非函数内部异常处理程序:有一个未捕获的异常,但内部致命异常处理函数以某种方式设置为非函数,并且无法调用.

7 - 内部异常处理程序运行时失败:存在未捕获的异常,并且内部致命异常处理程序函数本身在尝试处理它时引发错误.

8 - 未使用

9 - 无效参数:指定了未知选项,或者提供了需要值的选项而没有值.

10 - 内部JavaScript运行时失败:调用自举功能时,Node的引导过程内部的JavaScript源代码会引发错误.这种情况极为罕见,通常只能在Node本身的开发过程中发生.

11 - 无效的调试参数:设置了--debug和/或--debug-brk选项,但选择了无效的端口号

> 128 - 信号退出:如果Node收到致命信号,如SIGKILL或SIGHUP,则其退出代码将为128加上信号代码的值.这是一种标准的Unix实践,因为退出代码被定义为7位整数,信号出口设置高位,然后包含信号代码的值.

资料来源:https://www.tutorialspoint.com/nodejs/nodejs_process.htm


fre*_*old 9

0是成功代码并且1(或另一个数字)可以是失败代码。 0如果没有指定任何内容,将被使用。对于在出去时传递信息很有用。在此回答:

/sf/answers/368636761/

更多信息直接来自 Node.js 文档:

https://nodejs.org/api/process.html#process_process_exit_code


Mar*_*nto 8

您可以在文档中找到问题的答案:https://nodejs.org/api/process.html#process_process_exit_code

基本上,如果您想成功退出,请使用 0;如果您想失败退出,请使用 1。