Skip to content

多次 then 调用

同一个 Promise 可以调用多次 then,每次的回调都应该被执行。将 #handlers 改为数组,新增 #runHandlers 方法来批量执行。

本节要点

之前的 #handlers 是单个函数,多次 then 会覆盖。现在改为数组 #handlers = [], 每次 then 将回调 push 进数组。新增 #runHandlers 方法批量执行并清空。

新增 #runHandlers 方法

新增方法
Loading code...

完整代码

my-promise.js
Loading code...

运行示例

示例一:异步 resolve 多次 then
示例代码
Loading...
示例二:同步 resolve 多次 then
示例代码
Loading...
示例三:异步 reject 多次 then
示例代码
Loading...

循序渐进实现 Promise