async/await 不是新机制,而是 Promise 的语法糖:async 函数的返回值自动包装成 Promise,await 会「暂停」函数执行直到 Promise 落地,然后取出结果继续写下去——异步代码读起来和同步一模一样。
错误处理同步化:把 await 调用包进 try/catch 即可,不用再写 .catch 链。但要注意串行 await 的性能陷阱:无依赖的请求要并发,用 Promise.all 包起来再整体 await。
async function loadUser(id) { try { const res = await fetch(`/api/user/${id}`); const user = await res.json(); return user; } catch (err) { console.error('加载失败', err); return null; } } // 并发:三个请求一起发 const [a, b] = await Promise.all([fetchA(), fetchB()]);