云迈博客

您现在的位置是:首页 > 灌水专栏 > 正文

灌水专栏

未命名

dengkai2022-09-30灌水专栏49
一、asyncawait具体使用规则(1)async的函数在执行后都会自动返回一个Promise对象,有无值根据有无return值。(2)await必须在async函数里使用,不能单独使用。(

一、async await具体使用规则

(1)async的函数在执行后都会自动返回一个Promise对象,有无值根据有无return值。

(2)await必须在async函数里使用,不能单独使用。

(3)await后面需要跟Promise对象,不然就没有意义,而且await后面的Promise对象不必写then,因为await的作用之一就是获取后面Promise对象成功状态传递出来的参数。

(4)async/await作用:同步异步化。

二、基本语法

function aaa(val) {
    return new Promise((resolve, reject) => {
            if(val){
                resolve('success')
            }else{
                reject('Error')
            }
    })
}

// async await 的用法
async function fn(val) {
    try {
        let result = await aaa(val)
        return result
    } catch (err) {
        return err
    }
}
// 返回的 a,b 是一个 promise 对象
var a = fn(true)
var b = fn(false)
a.then((res)=>{
    console.log(res) // success
})
b.then((res)=>{
    console.log(res) // Error
})

三、async await 和 promise 的区别

async/await 出现的异常是无法捕获的,需要借助 try/catch 来捕获异常
任何一个await后面的promise对象变为reject,那么整个async都会被中断
使用 async await 的话,catch 能处理 JSON.parse 错误

发表评论

评论列表

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~