首页 > web前端 > js教程 > 为什么我的异步函数返回 `Promise { }` 而不是值?

为什么我的异步函数返回 `Promise { }` 而不是值?

Barbara Streisand
发布: 2024-12-13 06:07:17
原创
839 人浏览过

Why Does My Asynchronous Function Return `Promise {  }` Instead of a Value?

异步函数返回 Promise { ;正如所提供的代码所示,异步函数通常返回一个 Promise,它代表最终可用的值,而不是 Value

。但是,当尝试立即访问其值时,由于 Promise 的未解析状态,控制台会记录“Promise { }”。

正在解析 Promise 值

要获得所需的令牌值,您必须将“.then”处理程序链接到您的 Promise。此处理程序捕获已解决的结果,无论它已经可用还是仍待处理:

Promise 解析详细信息

Promises 遵守 Promises/A 规范,该规范强制要求具体的解析过程:

  • 如果“.then”处理程序返回一个值,则Promise 解析为该值。
  • 如果处理程序返回另一个 Promise,则 Promise 解析为链式 Promise 的解析值。

了解 Promise 链

每个“.then”处理程序的解析值成为下一个处理程序的输入,启用一系列异步操作。以下示例说明了此行为:

值返回:

链式 Promise 返回:

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

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板