async/await 是 JavaScript 中处理异步操作的新特性,它建立在 Promise 的基础上,旨在简化异步代码的编写和理解。
-
async 函数: 使用
async
关键字定义的函数会隐式返回一个 Promise 对象。在函数内部,可以使用await
关键字等待一个 Promise 对象的解决或拒绝。这使得异步代码看起来更像同步代码,易于编写和阅读。 -
await 表达式: 在
async
函数内部使用await
关键字来等待 Promise 对象的解决。当使用await
时,函数暂停执行,直到等待的 Promise 对象状态变为解决或拒绝。如果是解决状态,await
表达式返回解决值;如果是拒绝状态,则抛出相应的错误。
工作原理:
- 定义一个
async
函数。 - 在这个函数中,使用
await
关键字等待一个返回 Promise 的表达式。 - 当
await
表达式执行时,函数会暂停,直到该 Promise 完成。 - 如果 Promise 完成并返回了值,
await
表达式会返回解决值。 - 如果 Promise 失败,则
await
表达式会抛出一个错误。
这样,通过 async/await
,可以以更清晰、同步的风格编写异步代码,提高了代码的可读性和可维护性。
Was this helpful?
0 / 0