async 与 await
async和await:让异步编程更简单
基于promises的语法糖,使异步代码更易于编写和阅读
async 函数
函数的返回值为 promise 对象
promise 对象的结果由 async 函数执行的返回值决定await 表达式
await 右侧的表达式一般为 promise 对象, 但也可以是其它的值
如果表达式是 promise 对象, await 返回的是 promise 成功的值
如果表达式是其它值, 直接将此值作为 await 的返回值注意
await 必须写在 async 函数中, 但 async 函数中可以没有 await
如果 await 的 promise 失败了, 就会抛出异常, 需要通过 try...catch 捕获处理async function test() { try { const result2 = await fn() console.log('result2', result2) } catch (error) { console.log('error', error) } const result3 = await fn4() console.log('result4', result3) }