async/await 是 JavaScript 中处理异步操作的新特性,它建立在 Promise 的基础上,旨在简化异步代码的编写和理解。

  • async 函数: 使用 async 关键字定义的函数会隐式返回一个 Promise 对象。在函数内部,可以使用 await 关键字等待一个 Promise 对象的解决或拒绝。这使得异步代码看起来更像同步代码,易于编写和阅读。

  • await 表达式:async 函数内部使用 await 关键字来等待 Promise 对象的解决。当使用 await 时,函数暂停执行,直到等待的 Promise 对象状态变为解决或拒绝。如果是解决状态,await 表达式返回解决值;如果是拒绝状态,则抛出相应的错误。

工作原理:

  1. 定义一个 async 函数。
  2. 在这个函数中,使用 await 关键字等待一个返回 Promise 的表达式。
  3. await 表达式执行时,函数会暂停,直到该 Promise 完成。
  4. 如果 Promise 完成并返回了值,await 表达式会返回解决值。
  5. 如果 Promise 失败,则 await 表达式会抛出一个错误。

这样,通过 async/await,可以以更清晰、同步的风格编写异步代码,提高了代码的可读性和可维护性。

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.