Skip to content

状态封装

Promise 有三种状态:pending、fulfilled、rejected。状态一旦变更就不可逆转。

本节要点

新增状态常量 PENDING / FULFILLED / REJECTED。resolve 和 reject 中加入状态守卫,确保只能变更一次。

完整代码

my-promise.js
Loading code...

运行示例

示例一:resolve 后状态变为 fulfilled
示例代码
Loading...
示例二:reject 后状态变为 rejected
示例代码
Loading...
示例三:状态只能变更一次
示例代码
Loading...

循序渐进实现 Promise