面试准备async+await的使用与原理

Posted loveliang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试准备async+await的使用与原理相关的知识,希望对你有一定的参考价值。

promise基础

技术图片

    // 使用promise解决炼狱回调的问题
    // let p1 = new Promise(function(resolove,reject){
    //     // resolove 成功
    //     // reject 失败
    // })
    // p1 是new Promise的实例
    // p1.then  成功的函数resolve 失败的函数reject
     
    let p1 = new Promise(function(resolove,reject){
        // resolve 是成功的函数  reject是失败的函数
       resolove(1)
    })
    p1.then(function(data){
        // data就是resolve传递的参数
        console.log(data,‘成功‘)
    })

ajax使用promise

技术图片

链式回调

可以一直.then进行接口请求
技术图片

async + await

可以省掉then 简单快捷
await会等待成功 才执行下面 同步
技术图片

async它就是Generator函数的语法糖
技术图片

技术图片

打印出来是一个对象
技术图片

技术图片

原理

async + await 原理就是 Generator + yield 的语法糖
async + await 其实就是 Generator + yield 的写法







以上是关于面试准备async+await的使用与原理的主要内容,如果未能解决你的问题,请参考以下文章

Swift新async/await并发中利用Task防止指定代码片段执行的数据竞争(Data Race)问题

JS255- 如何在 JS 循环中正确使用 async 与 await

仅“2k”字就能理解的async/await原理,摸个鱼的时间搞定它

flutter async和await原理解析

学会使用async/await

Async 和 Await 的工作原理