JS 里的 async & await 语法糖

应当在学完 Promise 实现异步编程 后才能理解此语法糖的优势。
先来看看两个关键字的作用:
基本概念
async
:声明一个异步函数
async
关键字用于函数声明,它表示这个函数内部可能会有异步操作。声明的函数会返回一个 Promise。
async
函数有两大特点:
- 如果函数代码中
return
了一个非 Promise 的值(比如一个数字或字符串),这个值会被自动包装在一个resolved
的Promise
中。 - 如果函数
throw
了一个错误,它会返回一个rejected
的Promise
。
await
:等待一个 Promise
await
关键字只能在 async
函数内部使用。它的作用是“暂停”async
函数的执行,等待它后面的 Promise 完成(settle)。
- 如果 Promise 变成 resolved(成功),
await
会返回 Promise 的结果值。 - 如果 Promise 变成 rejected(失败),
await
会抛出这个错误,就像throw
语句一样。
错误处理
不同于 promise 里用 .catch()
,对于 async/await
,try...catch
是最标准、最推荐的错误处理方式。它能捕获 await
期间任何 Promise 的 rejection 以及其他同步代码的错误。
1 | async function getData() { |
- 标题: JS 里的 async & await 语法糖
- 作者: 三葉Leaves
- 创建于 : 2025-06-17 00:00:00
- 更新于 : 2025-07-10 13:40:50
- 链接: https://blog.oksanye.com/61d52c824930/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论