美文网首页前端新手
Promise 高级用法对比

Promise 高级用法对比

作者: 刘员外__ | 来源:发表于2020-12-04 11:50 被阅读0次
const p = Promise.all([p1, p2, p3])
// p1, p2, p3 为传入 promise 的实例
  1. Promise.all(ES2015):只有当传入的每个 Promise 实例的状态都变成 fulfilled 时,p 才 fulfilled,只要实例中有任意一个的状态是 rejected 的状态就变成了 rejected;

  2. Promise.race(ES2015):当传入的 Promise 实例中有一个的状态最先改变(注意是第一个改变状态的实例),那么 p 的状态就是该实例的状态,然后进行返回;

  3. Promise.allSettled(ES2020):只有等到所有传入的 Promise 实例都返回结果,不管是 fulfilled 还是 rejected,实例才会结束,然后返回对应的每个实例的状态;

  4. Promise.any(ES2021):当其中任何一个 Promise 实例 fulfilled 时,就返回该已完成的实例的 Promise。如果所有的实例都 rejected,那么就返回一个拒绝的 Promise 实例。

const pAny = Promise.all([p1, p2, p3])
Promise.any(pAny).then(
  resolve => {
    // 任何一个Promise完成
  },
  reject => {
    // 所有的 Promise都拒绝了
  }
)

相关文章

  • Promise 高级用法对比

    Promise.all(ES2015):只有当传入的每个 Promise 实例的状态都变成 fulfilled 时...

  • 如何正确的使用Promise

    promise用法 对比传统回调函数与Pormise的写法 传统回调函数 Promise的写法 Promise要比...

  • async搭配await和Promise的简单比较

    async搭配await是ES7提出的,它的实现是基于Promise。这里使用它对比Promise的用法,这里只是...

  • promise详解

    Promise 用法api 1.基本用法 2.简便写法 Promise.all([]) Promise.race...

  • Promise 对象

    Promise 的含义 基本用法 Promise.prototype.then() Promise.prototy...

  • Promise 对象

    目录:Promise 的含义基本用法Promise.prototype.then()Promise.prototy...

  • Promise扩展基础

    Promise.all基本用法: Promise.race基本用法: 直接调用成功状态: 函异步函数:

  • ES6——Promise

    Promise基本用法示例: let i=100; let promise=new Promise(functio...

  • Promise 的使用

    使用Promise 基本用法 A Promise is an object representing the ev...

  • Promise

    一.Promise常见用法 function doSth() { return New Promise(func...

网友评论

    本文标题:Promise 高级用法对比

    本文链接:https://www.haomeiwen.com/subject/jknbwktx.html