• async函数


    一,async函数介绍

    1.async函数是异步的一种方案,可以让异步的操作同步执行。

    二,async函数基本形式

    1.声明形式:在函数前加上关键字async 表示该函数是一个async 函数

    async function fn(){
        await ...
    }
    
    const fn = async ()=> { await ... }
    etc

    2.函数内部通常有许多await

    三,await命令

    1.await有等待的意思,需等待后面的Promise 执行结束才会执行下一步。这里强调一下后面的Promise,是因为假如后面直接跟的是一个计时器,那么计时器虽然是异步操作,但是不会等计时器回调函数执行才执行下一步。

    2.await后面可以跟Promise,和其他类型的数据,
    (1)当跟的是Promise时值是执行成功的返回值,

    async function fn(){
        let a = await Promise.resolve(1)   a=1
        let b = await Promise.resolve(2) b=2
        return a+b  
    }
    fn().then(v=>v) v =3

    (2)如果是其他数据时,返回值就是数据本身会返回的值,该啥值是啥值。

    function k(){}
    async function fn(){
        let a = await k   //a就是函数k
        let b = await 1 //b=1
        let c = await setTimeOut(...) //c是定时器的id数值
        return a+b  
    }
    fn().then(v=>v) v =3

    四,async函数返回Promise对象

    1.async函数返回值是一个Promise对象,可以使用.then接受一个回调函数,和Promise所有的操作

    2.Promise的状态改变的的几种情况
    (1)当await其中一个Promse执行失败,那么接下来的await不会继续执行,async函数返回Promise的状态变为失败,执行.catch方法

    (2)当执行到return ,下面的await不会执行,return的值就是.then回调函数的参数

    (3)当throw new Error 下面的状态不会执行,async函数返回Promise的状态变为失败,执行.catch方法

    (4)当所有的异步操作都能成功时,那么只有所有异步操作执行完后,async函数返回Promise的状态变为成功,返回值是return的值

    ————————————————
    版权声明:本文为CSDN博主「豆瓣酱,」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_40340943/article/details/122972446

  • 相关阅读:
    Git push 常见用法
    Git commit 常见用法
    Git add 常见用法
    Git-仓库
    Git clone 常见用法
    Git-简介
    ZOJ Problem Set
    ZOJ Problem Set
    ZOJ Problem Set
    ZOJ Problem Set
  • 原文地址:https://www.cnblogs.com/fubuki/p/16319828.html
Copyright © 2020-2023  润新知