直接键访问和对象解构之间的性能

2024-02-15

下面最有效的代码是什么。

Code 1

const {
  type,
  size,
} = props;

console.log(type);

Code 2*

console.log(props.type);

我在一篇文章中读到,当您读取对象深处的键值对时,会对性能产生影响。我知道访问一个级别不会对性能产生巨大影响。但我想从上面的代码示例(代码1和代码2)中知道哪个会更快、更高效。


如果您看到破坏部分的转译代码,您可以发现正在设置一个新变量。

例如:

const {
  type,
  size,
} = props;

被转换为

var type_1 = props.type; // dummy_name
var size_1 = props.size;

因此,设置了一个额外的变量,并且内存消耗相对较高。然而,性能差异非常小。

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

直接键访问和对象解构之间的性能 的相关文章

随机推荐

  • Java检查字符串中的重复字母

    我在弄清楚如何检查用户输入的重复字母时遇到问题 程序需要将重复的字母输出为 true 如果没有则输出为 false 程序不应计算重复的数字或符号 例如 用户输入 巧克力程序输出 真 用户输入 112奶油程序输出 假 这是另一个版本 基于 r
  • 使用 JSDoc 记录工厂

    为了避免使用new在我的 JavaScript 代码中 我编写工厂来创建对象 我尝试了很多种组合 最令我满意的结果如下 Document module module app document function use strict Fact
  • 全8位加法器,非逻辑输出

    我创建了一个带全加器的 8 位加法器 正如您所看到的 我开始从右到左添加相应的位 对于 cin 信号 t1 和 t2 并按顺序 cout t2 和 t1 第一个 cin 设置为加法器输入 cin 我在实现中没有看到任何问题 但是当我运行它时
  • Office365 执行多个请求时出现“addFileAttachmentAsync”错误

    我遇到问题添加文件附件异步 我有 2 个数组 嵌入文件 包含将附加到正文中的文件名 和附件 包含将作为附件的文件名 我有2个for为每个数组运行循环 它们应该对数组中的每个文件向 Exchange Server 发出 GET 请求并获取二进
  • 在 iOS 中读取文本文件

    如何将文本文件读入textView 我有许多不同的文本文件 用户选择显示哪个 所以这就是为什么我不只是在其中有一个文件名 我真的很困惑为什么这不起作用 我在 Apple 开发者网站上有关从文件读取到字符串的部分中找到了它 NSString
  • PHPExcel图表不反转垂直轴

    我正在使用 PHPExcel 以便使用条形图导出 Excel 图表 我可以将默认布局的图表导出为下图 但是 我想将轴布局放在图表顶部并反转 Y 轴 如下图所示 我怎样才能做到这一点 研究代码后我发现它是possible反转轴 yAxis n
  • Alfresco 创建一个新用户组,仅允许创建用户和组

    我想创建一个新用户组 该用户组中的成员可以创建新用户和新组 我认为创建用户或组需要admin允许 该用户组除了创建 编辑 删除用户 组外 没有其他管理权限 alfresco社区4 0c中是否提供了这种群组 我该如何实施 如何添加具有指定权限
  • 邮政编码应使用什么 html5 表单属性?

    最好使用限制字符数的 文本 属性 还是可以在邮政编码的输入中使用数字属性 只是想了解 html5 中表单的所有不同属性 干杯 你可以试试这个
  • java中时间轴和线程有什么区别

    以下两个简单的片段执行相同的操作 打印 Hello world 每一秒 但它们之间有什么区别呢 什么时候应该使用线程 什么时候应该使用时间轴 Timeline 内部是否启动一个线程 如果没有 如何在不阻塞主线程的情况下每秒执行一次打印 Ti
  • Lucene.net 搜索引擎

    我有一个文件夹 里面有 20 个文本文件 我希望索引该文件夹并在这些文件中搜索任何关键字 我怎样才能在 C 中做到这一点 这是对 lucene Net 的一个很好的介绍 Lucene Net 简介 CodeProject http www
  • Selenium SendKeys() 与 Chromedriver 使用剪贴板内容而不是电子邮件地址中的“@”字符

    我正在尝试使用 C 中的 Selenium 和 ChromeDriver 将电子邮件地址写入输入字段 到目前为止还没有什么引人注目的事情 但对于包含 字符的字符串 它将发送剪贴板的内容而不是该字符 例如 剪贴板的内容是 MYCLIPBOAR
  • 如何在java中插入多个制表符字符串? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何在Java中插入多个制表符字符串 这个例子 getName t t getLastName 不起作用 你的例子应该有效 但是没有理由单
  • 私有标识符仅在针对 ECMAScript 2015 及更高版本 (Angular 9) 时可用

    我正在从 Angular 8 2 升级到 9 1 并且我正在尝试将私有字段更改为 fieldName any在允许的情况下TS 3 8 https www typescriptlang org docs handbook release n
  • 休息模板 org.apache.http.NoHttpResponseException

    我有两个 Spring Boot 服务 A 和 B 还有一个外部服务 C 这是请求路径 Web 浏览器 服务 A 服务 B 外部服务 C 外部服务正在返回返回到前端的资源 对于 A B 和 C 之间的通信 我使用 Rest Template
  • Lion 10.7.3:Apple 目前不接受使用此版本操作系统构建的应用程序

    我在 Lion 10 7 2 上运行 Xcode 4 2 并且有一些应用程序需要更新到 Lion 沙箱 因此我可以将它们重新提交到 Mac App Store Mac 而不是 iOS 在此过程中 我弹出了一个更新到组合更新 10 7 3 的
  • Facebook lint 中的“无法获取作曲家模板数据”是什么意思?

    我在 Facebook 上创建了一个简单的原型应用程序 当我的测试脚本 Ubuntu 命令行上的 JavaScript 由 Node js 提供支持 尝试访问该应用程序时 它会生成以下错误消息 error message Invalid O
  • 没有时区信息的 Javascript ASP.net 日期格式 - 时区偏移

    我有一个客户端 JavaScript 可以在 JavaScript 中生成日期 new Date 2007 5 1 我需要将此日期传递到后面的代码可以访问的隐藏字段 我的问题是 当隐藏字段转换为 DotNet 日期时间时 时间不正确 这是因
  • 接口+扩展(mixin)与基类

    接口 扩展方法 mixin 比抽象类更好吗 如果你的答案是 这取决于 那么它取决于什么 我认为接口 扩展方法有两个可能的优点 接口是可多重继承的 而类则不能 您可以使用扩展方法以不间断的方式扩展接口 实现您的接口的客户端将获得您的新基本实现
  • 如何将socket.io与最新的mean.io一起使用?

    我已经获取了最新的 Mean io 的副本 并注意到与我之前使用的先前版本相比有相当多的变化 现在 我正在做的是创建一个非常基本的聊天应用程序 它使用套接字 io http socket io 有房间 按照套接字文档中的基本设置 我必须实现
  • 直接键访问和对象解构之间的性能

    下面最有效的代码是什么 Code 1 const type size props console log type Code 2 console log props type 我在一篇文章中读到 当您读取对象深处的键值对时 会对性能产生影响