Promise的几种用法

2020-02-18  本文已影响0人  Rui哥

Promise

1、什么是Promise ?

2、网络请求的回调地狱?

setInterval(function(){
  setInterval(function(){
    setInterval(function(){
        setInterval(function(){

      },1000)
    },1000)
  },1000)
},1000)

3、Promise的基本用法

我们先来看看Promise最基本的语法, 这里我们使用定时器来模拟异步事件

//这是我们以前没有Promise时, 异步函数的处理方式
setTimeout(function(){
  let data = 'hello promise';
  console.log(data);
},1000)

4、promise 的创建定义

5、Promise的三种状态

6、Promise的链式调用

7、Promise all 使用

我们平时可能有这样的需求, 同时发出请求1 和 请求2, 当请求1和请求2同时成功了就去执行成功的操作, 当其中有一个发生错误就立即停止并处理错误, 这种情景就可以使用 Promise.all 将所有的异步任务包裹起来一起做


Promise.all([

      // 异步任务1
      new Promise((resolve, reject)=>{
        // 使用定时器模拟任务
        setTimeout(()=>{
          resolve('第一件事完成了')
        },1000)
      }),

      // 异步任务2
      new Promise((resolve,reject)=>{
        setTimeout(()=>{
          resolve('第二件事完成了')
        },2000)
      }),
      // 异步任务3
      new Promise((resolve,reject)=>{
        setTimeout(()=>{
          resolve('第三个成功')
          //reject('第三件事完失败')
        },2000)
      }),
    ]).then(results=>{  // 执行的结果全部存在数组中, 序号与任务添加的新婚徐一直
      console.log(results);
    })
      .catch(errors=>{
        console.log(errors);
      })
上一篇下一篇

猜你喜欢

热点阅读