Skip to content

promise.catch后面的.then还会执行吗?

Posted on:2024年7月20日 at 10:36

答案: 会继续执行

虽然Promise是开发过程中使用非常频繁的一个技术点,但是它的一些细节可能很多人都没有去关注过。我们都知道.then, .catch, .finally都可以链式调用,其本质上是因为返回了一个新的Promise实例。

catch的语法形式如下:

p.catch(onRejected);

.catch只会处理rejected的情况,并且也会返回一个新的Promise实例。

.catch(onRejected)then(undefined, onRejected)在表现上是一致的。

事实上,catch(onRejected)从内部调用了then(undefined, onRejected)。

原文转自:https://fe.ecool.fun/topic/3925cf74-ee93-49fd-8896-8bc7221f32a4