JavaScript promises中错误处理参数和catch之间的区别[重复]

Posted

技术标签:

【中文标题】JavaScript promises中错误处理参数和catch之间的区别[重复]【英文标题】:Difference between error handling param and catch in JavaScript promises [duplicate] 【发布时间】:2017-03-16 15:08:18 【问题描述】:

为什么我需要两者?有什么区别

之间

.then(doWork, errorHandler)

……和……

.then(doWork) .catch(errorHandler)

这是为了方便,两者都会捕获错误吗?我需要同时使用还是只使用一个?在哪些用例上?

【问题讨论】:

另一个可能的骗局:Promise : then vs then + catch 【参考方案1】:

在第一个代码 sn-p 中,如果成功处理程序抛出异常或拒绝承诺,则执行不会进入错误处理程序,因为承诺已经在此级别解决。

使用 catch,您始终可以从上一个成功处理程序中看到未处理的错误。

【讨论】:

以上是关于JavaScript promises中错误处理参数和catch之间的区别[重复]的主要内容,如果未能解决你的问题,请参考以下文章

用一级 try ... catch 捕获 JavaScript Promise 中的错误

javascript:错误处理

ionic3 异步请求中.then的作用,以及如何理解JavaScript Promise

在 JavaScript 中编写Go式错误处理的async/await

在 Node.js + Express 中使用 Promise 处理错误

Promise完全解读