Skip to content

then 嵌套 Promise

当 then 回调返回的是一个 Promise(thenable)时,需要等待它完成再 resolve,而不是直接 resolve 这个 Promise 对象。

本节要点

新增 isPromiseLike 工具函数判断值是否为 thenable。 在 then 中,如果回调返回值是 thenable,调用 returnValue.then(resolve, reject) 等待其完成。

新增 isPromiseLike

新增工具函数
Loading code...

完整代码

my-promise.js
Loading code...

运行示例

示例一:then 回调返回 Promise
示例代码
Loading...
示例二:then 回调返回普通值
示例代码
Loading...
示例三:嵌套 Promise 链式调用
示例代码
Loading...

循序渐进实现 Promise