JS 异步

JS 异步

👹

Promise

  • 用来优化回调地狱问题 使代码可读性更高
  • Promise方法会有两个参数,条件为真,会执行参数一,否则会执行参数二,执行参数一之后.then 否则catch
    数据的传递是直接用参数,并且在每个回调函数里面不能马上处理数据,需要下一个.then 或者 catch来打印。

async await

  • async :是用来定义此函数是一个异步函数,也只有在异步函数里才能使用await关键字

    1
    2
    3
    4
    5
    6
    async function name(params) {
    //这是一个异步函数
    let resultA = await requestResultA()
    let resultB = await requestResultB(resultA)
    console.log(resultB);
    }
  • resultA返回的是一个promise

  • await字面意思是等待 当程序执行到第一个await ,计算机需要完全将 requestResultA() 执行完才会 执行下面的代码。

    • 假如不这样,代码会一股脑的运行到低,其中的数据压根来不及处理
      1
      2
      3
      4
      //回忆一下
      async function XX(){
      { data : ref } = await 一个Promise返回对象
      }
  • Promise 是一个异步操作,当它忙于工作时,主程序可以继续,不会阻碍进步

作者

发布于

2022-07-29

更新于

2023-07-07

许可协议