async await promise

3 篇文章 0 订阅

执行async函数 ,返回的都是Promise对象
若执行的是一个普通函数,那么async会帮你封装成一个promise对象在进行返回
若直接返回一个promise对象,就会返回promise对象

    async function test1() {
        return 1

    }
    async function test2() {
        return Promise.resolve(2)

    }
  const a = test1()
  const b = test2()
    console.log(a)//输出promise对象
    console.log(b)//输出promise对象

promise.then成功的情况下对应await

    async function test3() {
        const c=Promise.resolve(3)
           c.then(data=>{
               console.log(data)
           })
       const data = await c;
    }
    test3()//输出3

await内部会把数据封装成一个promise对象

    async function test4() {
        const d=Promise.resolve(4)

        const data = await d;//await promise.resolve(4)
        console.log(data)//输出4
    }
    
    test4()

异步函数

    async function test5() {
        const e=await test1()

        console.log(e)   //返回1
    }

    test5()

Promise.catch异常的情况对应try…catch

   async function test6() {
        const f=Promise.reject(6)  ;
         try{
             const data6 = await f;
             console.log(data6)
         }   catch (e) {
             console.error('e',e)//此时输出异常状态 e 6
         }

      
    }
    test6()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值