JavaScript:作为参数传递的Try/Catch vs error函数
JavaScript: Try/Catch vs error function passed as a parameter
我想知道在nodeJS的JavaScript中,哪种方法更适合错误处理和调试?
具有纯try/catch块:
try
{
dangerous.function();
}
catch(error);
{
console.log(error);
}
或
只需使用一个函数作为参数,如果出现任何错误,就会显示
dangerous.function(function(error)
{
console.log(error);
});
我之所以提出这个问题,是因为我读到try/sthrow可能会记录太多堆栈跟踪数据,如下所示:http://nodejs.org/api/domain.html#domain_warning_don_t_ignore_errors
这完全取决于您。异常具有提供堆栈跟踪的优点。
请注意,如果 它们旨在实现相同的目的,但它们将用于不同的上下文: 我强烈建议阅读这篇文章(尽管它最初是为Node.js开发人员编写的,但它对每个JavaScript开发人员都很有价值),这篇文章完全涵盖了这个主题。dangerous.function
异步执行其工作,那么您将需要使用第二种方法,因为最初没有任何异常需要捕获。但这并不意味着你不能使用异常,只是如果你想使用异常,你必须将异常传递给回调,而不是抛出它
相关文章:
- setInteval vs setTimeout
- $(this).prop('property') vs. this.property
- 节点Js:How to catch a“;没有这样的文件或目录“;读取线模块出错
- Js.erb VS按钮标记-不'不起作用.为什么?
- reactjs this.refs vs document.getElementById
- Performance: NaCl vs Emscripten
- 文本表示法VS.构造函数,用于在JavaScript中创建对象
- errors with Javascript try catch
- Advantages to DOMParser vs template & innerHTML
- JavaScript-===vs===运算符性能
- 如何使用(this)访问Angular 2 http rxjs catch函数中的对象属性
- 开发第三方小部件-Angular vs jQuery vs普通的旧JS
- PhantomJS(vs nightwatch.js)设置cookie错误
- http/rxjs catch回调中的Angular 2重定向导致TypeError:无法读取属性'订阅'
- Javascript events: window.event vs argument reference (funct
- jQuery Deferred - catch vs fail
- onrejected vs catch in Promise
- JavaScript:作为参数传递的Try/Catch vs error函数
- Promise : then vs then + catch
- javascript try catch vs if then else