【发布时间】:2020-11-25 02:35:52
【问题描述】:
我有以下代码:
function promise3() {
return new Promise((resolve, reject) => {
function1().then(() => {
resolve();
}).catch(err => {
reject(err);
console.log("after error");
});
})
}
promise3().catch(e => {
console.log(e);
});
function1 返回一个承诺。但是当function1 失败并返回错误时。我在错误的 console.log 之前看到了console.log("after error")。我虽然reject 之后的代码不会运行。 reject 就像一个回报。那么这里发生了什么?
【问题讨论】:
-
当然可以?
reject()只是一个函数调用,除此之外它不会做任何事情。如果您希望代码执行在您触发解析或拒绝时结束,return他们立即终止承诺功能。
标签: javascript