如何在 node.js 中捕获同步函数中的错误?

Posted

技术标签:

【中文标题】如何在 node.js 中捕获同步函数中的错误?【英文标题】:How to catch errors in synchronous functions in node.js? 【发布时间】:2015-08-02 17:55:22 【问题描述】:

在异步函数中,我们可以简单地在回调中捕获错误。例如:

异步函数:

fs.readdir(path, function(err)
    //catch error
)

由于同步函数没有回调,如何捕捉错误?

同步功能:

fs.readdirSync(path);           //throws some error

一种方法是使用 try catch 块:

try
    fs.readdirSync(path);

catch(err)
    //do whatever with error

还有其他方法吗?如果是,那哪个更好?

【问题讨论】:

try...catch是同步方式。 对于同步try ... catch 是处理异常的方式 【参考方案1】:

还有其他方法吗?

不,你就是这样做的。通常,您在try 中拥有所有主要逻辑,然后在catch 中处理异常情况(错误)。 (并在finally 中进行清理。)

【讨论】:

以上是关于如何在 node.js 中捕获同步函数中的错误?的主要内容,如果未能解决你的问题,请参考以下文章

如何在渲染 ejs 视图 Node.js 时捕获错误

Node.js - File System

node.js 中的同步 HTTP 请求

如何在 node.js 中将函数与 Promise 同步

Node.js 中的错误“未定义窗口”

为啥使用同步功能 node.js