javascript中Promise的异常捕获用法

599次阅读
没有评论

javascript中Promise的异常捕获用法

1、在promise的then方法中,已经自动帮助我们try catch回调函数

Promise.prototype.then = function(cb) {
try {
cb()
} catch (e) {
       // todo
       reject(e)
}
}

2、then方法中抛出的异常,将被下一级联then方法的第二个参数捕获。

Promise.prototype.done = function (resolve, reject) {
    this.then(resolve, reject).catch(function (reason) {
        setTimeout(() => {
           throw reason;
        }, 0);
    });
};

如果最后一个then有异常,可以添加一个done方法,这个方法不会返回promise对象,所以之后不能级联。done方法最终会将异常抛向全局,这样就可以被全局的异常处理函数捕获或中断线程。这也是promise的最佳实践策略。

以上就是javascript中Promise的异常捕获用法,希望对大家有所帮助。更多Javascript学习指路:Javascript

推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:JavaScript2022-12-15发表,共计571字。
新手QQ群:570568346,欢迎进群讨论 Python51学习