async函数return的是Promise,await Promise后得到Object


前言

1、函数return的返回值Object,await后得到的是Object

function aa(){
    let num = 5
    return num;
}

async function bb (){
    let num1 = aa();
    let num2 = await aa();
    console.log(num1);
    console.log(num2);
}

bb();

在这里插入图片描述

2、async函数return的返回值是Promise,await后得到是Object

async function aa(){
    let num = 5
    return num;
}

async function bb (){
    let num1 = aa();
    let num2 = await aa();
    console.log(num1);
    console.log(num2);
}

bb();

在这里插入图片描述

3、函数直接return Promise,await后得到是Object

function aa(){
    let num = 5
    return new Promise((resolve,reject)=>{
        resolve(num);
    });
}

async function bb (){
    let num1 = aa();
    let num2 = await aa();
    console.log(num1);
    console.log(num2);
}

bb();

在这里插入图片描述
综上 async函数return出来的是promise对象,需要await后方可转化为普通Object

总结

踩坑路漫漫长@~@

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐