首页 >web前端 >js教程 >为什么 JavaScript 中的异步函数总是返回 Promise?

为什么 JavaScript 中的异步函数总是返回 Promise?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-14 01:13:09128浏览

Why Do Async Functions Always Return Promises in JavaScript?

异步函数返回 Promise 而不是 Value

在 async/await 编程中,异步函数总是返回一个 Promise。这个 Promise 代表了函数异步工作的最终完成。

在另一个异步上下文中调用异步函数时,可以使用 wait 来暂停,直到 Promise 完成。但是,在非异步上下文中(通常是顶级或事件处理程序),您必须直接使用 Promise:

在现代环境中,模块内支持顶级等待:

为了更好地理解,让我们检查一下异步函数的显式 Promise 回调版本:

在此回调中版本:

  • Promise 执行器函数(传递给新的 Promise)同步运行,启动 web3.eth.getBlock 操作。
  • Promise 执行器或回调中的任何错误都会被捕获并转换为承诺拒绝。

以上是为什么 JavaScript 中的异步函数总是返回 Promise?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn