JavaScript:Try/Catch 与作为参数传递的错误函数

标签 javascript node.js error-handling try-catch conceptual

我想知道哪种方法更适合 JavaScript for nodeJS 的错误处理和调试?

有一个纯 try/catch block :

try
{
  dangerous.function();

}
catch(error);
{
  console.log(error);
}

只是用一个函数作为参数,有错误就会显示

dangerous.function(function(error)
{
  console.log(error);
});

我提出这个问题是因为我读到 try/throw 有可能记录过多的堆栈跟踪数据,如下所示:http://nodejs.org/api/domain.html#domain_warning_don_t_ignore_errors

最佳答案

这完全取决于您。异常具有提供堆栈跟踪的优势。

请注意,如果 dangerous.function异步方式 执行其工作,那么您将需要使用第二种方法,因为最初没有任何异常可以捕获。但这并不意味着你不能使用异常,只是如果你想使用异常,你必须将异常传递到回调而不是抛出它。 (或者不使用异常,这也完全取决于您。)

关于JavaScript:Try/Catch 与作为参数传递的错误函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25526705/

相关文章:

javascript - 使用鼠标事件通过 Javascript 移动图像

javascript - 使用 javascript 从浏览器控制台获取数据

flutter - RenderCustomMultiChildLayoutBox 的每个 child 都必须在其父数据中有一个 ID

javascript - Node/Npm 更新后,Sails.js 无法找到模块 'ini'

node.js - Ubuntu:我应该全局安装 NVM 还是每个用户安装 NVM?

javascript - 保持对象顺序

sockets - TCP 发送/接收错误报告

javascript - 创建不带 while 的 JavaScript 循环

javascript - 当我将 js 文件转移到静态文件夹中时,文本消失

javascript - 动态加载 reCAPTCHA