Promise
2018-08-23 本文已影响0人
陶六六
Promise
- promise具有三种状态,pending,fulfilled,rejected,创建就是pending态,通过resolve和reject使变成fulfilled或者rejected终态,终态始终保持无法改变
- 实例方法
Promise.prototype.then(resolveFn,rejectFn?)
-
Promise.prototype.catch(rejectFn)
等价Promise.prototype.then(null,rejectFn)
Promise.prototype.finally(finallyFn)
- 静态方法
-
Promise.all(PromiseArr)
全fulfilled或者一个rejected时变成终态 -
Promise.race(PromiseArr)
第一个fulfilled或者第一个rejected时变成终态 -
Promise.resolve()
- 在本轮事件结束时触发then方法,
- 参数是Promise实例,返回参数实�例本身
- 参数是thenable对象,转成Promise对象并立即触发then方法
- 参数是非thenable对象或者非对象,生成Promise对象,直接返回参数
- 参数空,直接返回空的fulfilled Promise实例
-
Promise.reject()
后继catch捕获到的是原封不动的reject参数 Promise.try()
-