0
点赞
收藏
分享

微信扫一扫

ES6系列教程1-Promise篇

理论知识回顾

[状态]

  • pending: 初始状态,既不是成功,也不是失败状态。
  • fulfilled: 意味着操作成功完成。
  • rejected: 意味着操作失败。

[方法]

* Promise.resolve(value)
  • 返回一个状态由给定value决定的Promise对象。
  • 如果该值是thenable(即,带有then方法的对象),返回的Promise对象的最终状态由then方法执行决定;
  • 否则的话(该value为空,基本类型或者不带then方法的对象),返回的Promise对象状态为fulfilled,并且将该value传递给对应的then方法。
  • 通常而言,如果你不知道一个值是否是Promise对象,使用Promise.resolve(value) 来返回一个Promise对象,这样就能将该value以Promise对象形式使用。
* Promise.reject(reason)
  • 返回一个状态为失败的Promise对象,并将给定的失败信息传递给对应的处理方法
* Promise.all(iterable)
  • 处理多个promise对象的状态集合,返回一个新的promise对象
  • iterable参数对象里所有的promise对象都成功的时候才会触发成功
  • 任何一个iterable里面的promise对象失败则立即触发该promise对象的失败
* Promise.race(iterable)
  • iterable参数里的任意一个子promise被成功或失败后,
  • 父promise马上也会用子promise的成功返回值或失败详情作为参数
  • 调用父promise绑定的相应句柄,并返回该promise对象。

[Promise 原型]

*Promise.prototype.then(onFulfilled, onRejected)
  • 添加解决(fulfillment)和拒绝(rejection)回调到当前 promise, 返回一个新的 promise.
* Promise.prototype.catch(onRejected)
  • 添加一个拒绝(rejection) 回调到当前 promise, 返回一个新的promise。
*Promise.prototype.finally(onFinally)
  • 添加一个事件处理回调于当前promise对象,并且在原promise对象解析完毕后,返回一个新的promise对象。
  • 回调会在当前promise运行完毕后被调用,无论当前promise的状态是完成(fulfilled)还是失败(rejected)

相关文档参考:

举报

相关推荐

【ES6】Promise

ES6 Promise

ES6的Promise

ES6 Promise 详解

ES6 Promise对象

ES6特性 -- Promise特性

ES6中Promise对象

ES6 之异步 Promise

0 条评论