async/await 是 JavaScript 中基于 Promise 的异步语法糖,使异步代码更直观;async 函数自动返回 Promise,await 只能在其中使用并暂停执行直至 Promise settle,需注意错误处理与并发优化。
async/await 是 JavaScript 中处理异步操作的语法糖,它让异步代码写起来像同步代码一样直观,同时底层仍基于 Promise。
在函数声明前加 async 关键字,该函数会自动返回一个 Promise。即使你 return 一个普通值,也会被包装成 resolved 的 Promise。
await 只能出现在 async 函数里,它会暂停函数执行,直到右侧的 Promise settle(fulfilled 或 rejected),然后继续往下走。
比如获取用户数据再获取其文章:
用 Promise 链写:
getUser().then(user => getPosts(user.id)).then(posts => console.log(posts)).catch(err => console.error(err))用 async/await 写:
async function loadUserPosts() {逻辑更接近人类阅读顺序,错误处理也集中明确。
前 async 函数的执行,其他代码仍可运行基本上就这些。async/await 不复杂但容易忽略细节,用熟了会让异步逻辑一目了然。