await

Posted shanlu0000

tags:

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

await expression ( value or promise )

  ①expression 一般是 promise 对象,也可以是其他值

  ②如果是 promise对象,await 返回的是 Promise 成功的值

  ③如果是其他值,直接将此值作为 await 的返回值

  ④await 必须写在 async 中,但 async 中可以没有 await

  ⑤如果 await 的 promise 失败,就会抛出异常,需要通过 try ... catch...捕获处理

    function fn1(){
        return new Promise((resolve,reject)=>{
            resolve(1)      
        })
    }
    function fn2(){
        return 2
    }
    function fn3(){
        return Promise.reject(3)
    }
    async function fn4(){
        const value1 = await fn1()
        const value2 = await fn2()
        console.log("value1:",value1)
        console.log(‘value2:‘,value2)
        try {
            const value3=await fn3()
        } catch (error) {
            console.log("error:",error)
        }
    }
    fn4()

    //value1:1
    //value2:2
    //error:3

  

 

以上是关于await的主要内容,如果未能解决你的问题,请参考以下文章

C# 使用Awaiter

ES7-Es8 js代码片段

使用 Async/Await 控制哪些代码停止

Async/Await替代Promise的理由

Async/Await是这样简化JavaScript代码的

如何优雅处理 async await 错误——解读小而美的 awaitjs 库