1、初始结构搭建
1  | //声明构造函数  | 
2、resolve 和 reject 实现,以及 throw 抛出错误改变状态
1  | //声明构造函数  | 
3、状态只能修改一次,then 方法执行回调,异步任务 then 方法执行回调,指定多个回调
1  | //声明构造函数  | 
4、同步修改状态 then 返回结果,异步修改状态 then 返回结果
同步
1  | Promise.prototype.then = function (onResolved, onRejected) {  | 
异步
1  | //添加 then 方法  | 
5、then 方法优化,catch 方法与异常穿透,值传递
1  | //添加 then 方法  | 
6、Promise.resolve,Promise,reject,Promise,all,Promise.race 实现
1  | //添加 resolve 方法  | 
7、then 回调函数异步执行
1  | function Promise(executor) {  |