内联访问等待值(JS)?

2024-03-29

首先我写了这样的东西:

(async function() {
    const value = await Promise.resolve({a: 3}).a
    console.log(value)
})().catch(console.error);

但我很快得出结论,这行不通,因为我们要等待a什么的财产Promise.resolve返回,这是未定义的。

所以我试着包裹我的await调用括号:

(async function() {
    const value = await(Promise.resolve({a: 3})).a
    console.log(value)
})().catch(console.error);

这也不起作用。 (它记录undefined)

所以这似乎是提取的唯一方法aprop 是做这样的事情:

(async function() {
    const resolvedValue = await Promise.resolve({a: 3});
    let aProp = resolvedValue['a']; 
})().catch(console.error);

,这会添加一行不必要的代码。

我觉得这样有点违背了异步/等待的目的。这是正确的还是我错过了什么?


你需要包裹await关键字和括号中的承诺,如下所示:

const value = (await Promise.resolve({a: 3})).a;

这样你就可以等待承诺,然后访问a解析值的属性。

await(Promise.resolve({a: 3})).a不起作用,因为await不是函数,而是运算符。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

内联访问等待值(JS)? 的相关文章

  • 在生产中使用 babel-node 可以吗

    我一直在使用 babel node 和 browserify 以及 babelify 转换来开发一个网站 以支持 ES6 语法 我只是想知道 我可以在生产中运行它吗 babel node server 而不是 node server 要在
  • 循环内的局部变量会被垃圾收集吗?

    我想知道将循环内引用的任何变量放在循环外是否更有效 或者它们可以像函数内的变量一样被垃圾收集吗 var obj key val for var i 0 i lt 10 i console log obj or for var i 0 i l
  • 在 Angular 单元测试中应该如何处理运行块?

    我的理解是 当您在 Angular 单元测试中加载模块时 run块被调用 我认为如果你正在测试一个组件 你不会想同时测试run块 因为unit测试应该只是测试一个unit 真的吗 如果是的话有什么办法可以防止run阻止运行 我的研究让我认为
  • 向 JS 计算器添加键盘支持时出现的问题

    我想为我的计算器添加键盘支持 当我用键盘按下操作 即 或 时 js将其视为数字 而不是操作 例如 当我通过点击计算 10 11 时 我将得到 21 作为结果 当我通过键盘输入时 我会得到 10 为什么会发生这种情况 是否可以改变它 div
  • 将组件注册到现有的 Vue.js 实例

    我是 Vue js 新手 我想注册一个本地组件 如下所述 https v2 vuejs org v2 guide components html Local Registration https v2 vuejs org v2 guide
  • NodeJs读取JSON文件

    我正在使用 NodeJs 读取 json 文件 我的代码非常基本 var obj require sample json console log obj 0 Sample json 文件包含这样的字符串化 JSON sample good
  • 是否可以将自定义 HTML 添加到传单图层组和图层控件

    有什么方法可以将自定义 HTML 注入图层组和图层控件中吗 在我们的应用程序中 我们实现了滑块 输入 范围 来调整不透明度设置 并且很明显 在其控制容器内部的基础层上使用专用滑块是有意义的 没有选项或参数可以修改此控件 理想情况下 我们希望
  • Webpack 和 Angular HTML 图像加载

    我一直对 webpack 和 Angular 感到头疼 这可能有一个简单的答案 但我无法弄清楚 我已经阅读了堆栈溢出中关于这个主题的几乎所有答案 但都无济于事 我有一个像这样的 html 页面 还有其他包含图像的模板 img
  • Twitter Bootstrap 轮播在加载时自动播放

    使用twitter bootstrap框架 如何调用轮播来 自动滑动 这意味着当页面加载时 轮播会自动滚动 我尝试过 javascript onLoad click 函数 a 下一个链接的 但这不起作用 你应该这样做Twitter Boot
  • getElementsByClassName & IE8:对象不支持此属性或方法[重复]

    这个问题在这里已经有答案了 I know getElementsByClassName 不支持IE8 你知道我可以用什么来代替吗 我因错误而变得烦人 对象不支持此属性或方法 HTML 代码是 function sumar var elems
  • 如何在 javascript 或 jquery 中按尺寸对图像进行排序

    如何在 JavaScript 或 jQuery 中按尺寸对图像进行排序 我的代码如下 var imgsrc if document images length lt 1 alert No images to open return for
  • Famo.us 滚动视图高度

    我正在尝试使用著名的顺序布局在滚动视图下方添加图像 但滚动视图的高度有问题 这就是我创建滚动视图的方式 var scrollview new Scrollview direction Utility Direction X options
  • AngularJS - 服务、工厂、过滤器等中的依赖注入

    因此 我想在我的 Angular 应用程序中使用一些插件和库 目前 我只是引用这些函数 方法 因为它们是在 99 的应用程序中以完全忽略依赖注入的方式使用的 我有 例如 javascript 库 MomentJS 它处理格式化和验证日期 并
  • 使用 jQuery/JavaScript 将文本框值复制到剪贴板

    我有一个文本框和按钮 如下所示 div class col xs 11 style padding 20px 0 div
  • 很奇怪!调用 window.location 或 location.replace 会重定向到该页面,然后再次返回!

    我处于调试模式 因此我可以看到正在访问哪个页面 当我打电话时window location or window location replace 它会转到该页面 然后返回原始页面 怎么会这样 解决方案是添加 window location
  • 如何上传文件 - sails.js

    我可以下载图像和 pdf 但无法下载文档文件 doc pptx odt 下载文档 doc pptx odt 时 仅将其下载为 ZIP XML 文件 我可以做什么 我在用着 填写上传文件文档 https github com balderda
  • javascript/jquery 禁用点击提交按钮,防止重复提交

    所以我的提交按钮如下所示 a href img src images user create product png border 0 a 当我双击它时 显然会双重提交 问题是 我将信息保存在数据库中 因此那里会有重复的信息 我不想那样 这
  • window.open 使用 css 样式

    我想设计我的 window open 目前 我的网页上有一些项目由于解析了某个类而打开 然后在新窗口中打开指定的文本 我想更改字体大小 字体和填充等 这是我的 JavaScript 代码
  • ES6 Reflect API 的好处

    我一直在努力升级一些代码以使用 ES6 语法 我有以下代码行 delete this foo 我的 linter 提出了使用建议 Reflect deleteProperty this foo 您可以找到该方法的文档here https d
  • React 错误:目标容器不是 DOM 元素

    我刚刚开始使用 React 所以这可能是一个非常简单的错误 但我们开始吧 我的html代码非常简单 load staticfiles

随机推荐

  • 尝试为每个 Web 请求实现会话,没有当前会话上下文配置

    正如我在标题中所说 我想为每个网络请求实现会话 我的会话提供程序是这样配置的 我对更改此配置不感兴趣 public class SessionProvider public static SessionProvider Instance g
  • 向 Google Cloud Firestore 上传和下载文件

    我看到 Firebase 已经发布了一个新的测试版 名为 Cloud Firestore 在文档中 文档的所有操作都描述得非常好 但我无法找到有关使用 Android 将媒体文件上传和下载到 Cloud Firestore 的任何信息 有人
  • 重写 php 应用程序以获得 seo 友好的 url

    我有 php 应用程序 由于客户要求拥有 SEO 友好的 url 因此必须部分重写 我的链接如下 www mysite com articles en php artid 89 我必须更改其中的网址 www mysite com artic
  • 使用Subject 和Observable 之间有什么区别,各自的用途是什么?

    我了解了制作 Observable 的两种不同方法 第一个是一个主题 如下所示 file A const message new Subject file B message subscribe message gt console log
  • 保留解密加密数据库的解密密钥的最佳方法是什么?

    我有一个加密的数据库和解密密钥 如何使解密密钥免受黑客攻击 数据库黑客攻击和未经授权的 PC 访问 汇编中的硬编码 保存在注册表中 保存在内存中 此外 我需要加密数据的算法 在每个解密时间期限的安全性方面 执行此操作的最佳算法是什么 RSA
  • GNU 日期和自定义格式

    我有一些特定日期格式的字符串 我想使用 GNU date 命令 coreutils 8 20 来处理它们 我可以使用 FORMAT 字符串获取要输出的日期 但不能理解使用相同字符串输入的字符串 我很确定我错过了一些明显的东西 是什么赋予了
  • 函数返回与不返回?

    返回还是不返回 是函数的问题 或者说 这真的很重要吗 故事就这样开始了 我曾经编写如下代码 Type3 myFunc Type1 input1 Type2 input2 但最近我的项目学院告诉我 我应该尽可能避免编写这样的函数 并建议采用以
  • 如何从里程计/tf数据获取投影矩阵?

    我想将视觉里程计的结果与 KITTI 数据集提供的事实进行比较 对于地面中的每一帧 我都有一个投影矩阵 例如 1 000000e 00 9 043683e 12 2 326809e 11 1 110223e 16 9 043683e 12
  • 如何在 MongoDB 中执行 SQL Join 等效操作?

    如何在 MongoDB 中执行 SQL Join 等效操作 例如 假设您有两个集合 用户和评论 我想提取 pid 444 的所有评论以及每个集合的用户信息 comments uid 12345 pid 444 comment blah ui
  • 如何从android发送数据到mysql服务器?

    我是android开发的新手 我正在使用 Android Studio 我正在制作一个应用程序 其中有一个名称下拉列表 选择任何名称后 相应的ID该名称显示在应用程序中 然后有一个按钮将搜索用户当前的 GPS 坐标并将其显示在应用程序上 我
  • 非线性条件断点

    是否可以设置断点 使程序在指令满足某些条件后停止执行true 一个类有一个名为的变量currency我想设置一个断点 使程序在之后的任何行停止currency 20 我不知道行号在哪里currency已更改 因此这就像在其中放置一个断点每行
  • 将 PDF 转换为 PNG Node.JS

    我正在构建一个 Node js 应用程序来将 PDF 转换为 PNG 并显示在用户页面上 该应用程序将像这样工作 用户上传 PDF 到服务器 服务器将 PDF 页面转换为单独的 PNG 在用户页面上显示 PNG 我发现了一个很棒的软件包 名
  • 在 Silverlight 8.1 应用程序中注册后台任务

    我正在开发一个使用 BLE 与某个项目通信的应用程序 我需要从它接收后台通知 我知道存在GattCharacteristicNotificationTrigger但我找不到任何方法在 Silverlight 8 1 应用程序中注册后台任务
  • 固定卡满足 FITS 标准是什么意思?

    我正在尝试使用 FITS 文件 我有以下代码 from astropy io import fits from astropy wcs import WCS hdul fits open fitsfilename 0 wcs WCS hdu
  • 在 jsf 页面中使用 commandButton 来下载文件

    使用 jsf 页面中的命令按钮下载文件 使用 JSF 和 Richfaces 我有一个表 扩展 ExtendedDataModel 实现可修改 可序列化 其中包含一些数据 并且每行都有一个 下载 按钮
  • tabBar 存在时出现奇怪的定位问题

    我们有一个带有 UIPickerView 和工具栏 216 44 的自定义视图 在初始化时 viewDidLoad 使用以下代码将此自定义视图推送到屏幕下方 CGPoint newOrigin newOrigin x pickerViewO
  • 如何显示有关图像的所有元数据?

    我正在尝试使用 Pillow 读取图像的元数据TAGS功能 我使用以下代码来获取此信息 imports from PIL import Image from PIL ExifTags import TAGS imagename image
  • UITapGestureRecognizer 选择器,发送者是手势,而不是 ui 对象

    我有一系列使用标签来识别的图像视图 我在图像中添加了单击手势 UITapGestureRecognizer singleTap UITapGestureRecognizer alloc initWithTarget self action
  • ruby redis 客户端扫描与密钥

    我正在寻找一些有关 redis 的 ruby 客户端的文档 但没有成功 我正在使用密钥 但我听说它们在生产 redis 中的性能很糟糕 redis Redis new host Settings redis host port Settin
  • 内联访问等待值(JS)?

    首先我写了这样的东西 async function const value await Promise resolve a 3 a console log value catch console error 但我很快得出结论 这行不通 因为