在node.js中,方法process.exit(1)和process.exit(0)的区别是什么?

11 浏览
0 Comments

在node.js中,方法process.exit(1)和process.exit(0)的区别是什么?

在node.js应用程序中,我看到了两种方法的使用process.exit(1)process.exit(0)。有人可以给我一个确切的答案吗?

admin 更改状态以发布 2023年5月23日
0
0 Comments

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

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

0
0 Comments

当没有更多异步操作时,Node通常以0状态代码退出。以下是其他退出代码:

1-未捕获的致命异常:存在未捕获的异常,并且它没有被域或未捕获的异常事件处理程序处理。

2-未使用:由Bash保留用于内置误用。

3-内部JavaScript解析错误:Node引导过程中的JavaScript源代码引起了解析错误。这非常罕见,通常只会在开发Node本身期间发生。

4-内部JavaScript评估失败:在Node的引导过程中,JavaScript源代码在评估时无法返回函数值。这非常罕见,通常只会在开发Node本身期间发生。

5-致命错误:V8发生了致命且无法恢复的错误。通常,将在stderr中打印具有前缀FATAL ERROR的消息。

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

7-内部异常处理程序运行时失败:出现未捕获的异常,并且内部致命异常处理程序函数在尝试处理它时本身抛出了错误。

8-未使用

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

10 - 内部JavaScript运行时故障:在Node启动过程中,JavaScript源代码在引导函数调用时抛出错误。这种情况极其罕见,通常只会在开发Node本身时发生。

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

>128 - 信号退出:如果Node接收到致命信号,例如SIGKILLSIGHUP,则其退出代码将是128加上信号代码的值。这是标准的Unix实践,因为退出代码被定义为7位整数,并且信号退出设置了高阶位,然后包含信号代码的值。

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

0