为什么对象键会转换为“[object Object]”?

2023-12-10

这段代码:

var a = {},
    b = {key:'b'},
    c = {key:'c'};

a[b] = 111;
a[c] = 222;

console.log(a[b]);

输出:“222”(不是“111”)。

解释:

b and c都将转换为“[object Object]”

有人可以解释这是为什么吗?


[object Object]只是对象的字符串表示形式——即调用的结果b.toString() or c.toString().

对象键是always字符串,所以当你说:

a[b]

JS会找到字符串的表示形式b ([object Object]),然后使用它。与相同c.

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

为什么对象键会转换为“[object Object]”? 的相关文章

随机推荐

  • 用于多态/单表继承关联的 Rails 嵌套属性形式

    我正在开发一个表单 使用 SimpleForm 它允许您编辑嵌入的关联 我遇到的问题是嵌套模型是子类 因此它们是不同的类型 具有可能不同的字段 我正在为每种类型的模型创建隐藏表单 并使用 JavaScript 显示所选类型的表单 仅供参考
  • 向 Angular HttpClient 添加 HTTP 标头不会发送标头,为什么?

    这是我的代码 import HttpClient HttpErrorResponse HttpHeaders from angular common http logIn username string password string co
  • 使用 NumPy 将固定调色板应用于图像?

    我有一个 RGB 字节的 NumPy 图像 假设它是这个 2x3 图像 img np array 0 255 0 255 255 255 255 0 255 0 255 255 255 0 255 0 0 0 我还有一个调色板 涵盖图像中使
  • 如何使用JavaScript更新/更改HTML内容并防止页面刷新?

    我是脚本新手 我想用 JavaScript 更新 HTML 内容 但正如你所看到的 网页不断刷新 如何防止页面刷新 JavaScript function showResult form var coba form willbeshown
  • 如何将数组中的数字“加倍”,并将其保存在新数组中

    这是一个两步问题 1 我试图将一个数组 原始数组 的内容 加倍 将其保存在一个新数组 加倍数组 中 2 然后将这两个数组分配给具有 2 个属性的对象 新对象 原始号码 双数 这就是我到目前为止所拥有的 我做错了什么 var numbers
  • 如何使用数据字段获取组合框显示值?

    我已在资源编辑器中将组合框数据设置为 第一 第二 第三 但是当我编译程序时 组合框完全是空的 我根本看不到任何项目 另外 如何设置默认选择哪个项目 如何以编程方式更改当前选定的项目 答案可以在这篇文章中找到 http codeguru ea
  • 以编程方式更改 WPF 按钮背景图像

    我正在尝试创建一个
  • 根据文本文件中提供的类名创建对象?

    我想知道 在 C 中是否可以使用从文件中读取的文本值来创建该名称的类的对象 例如 contents of file MyClass code read file code instantiate MyClass object 如果可能的话
  • Laravel 按分页排序

    我有一个posts表和comments表 评论属于帖子 我在帖子和评论模型中设置了关系 我确实按照每个帖子的评论数量对帖子进行排序 如下所示 posts Post with comments gt get gt sortBy functio
  • 将法语(重音)字符放入 Ruby 文件中 [重复]

    这个问题在这里已经有答案了 可能的重复 Rails 和 Ruby 1 9 中的无效多字节字符 US ASCII 如何将法语字符放入 Ruby 文件中 这是一个错误 SyntaxError in ArticlesController show
  • 已知 IE 8 PHP 会话问题?

    我有一个通过 php 会话进行身份验证的登录系统 我的客户说 由于我已将网站移至新服务器 因此登录失败 但只有当他使用 IE 8 时 我一直无法复制这些问题 更奇怪的是 这一切都在以前的主机上运行 我不知道这是浏览器问题 服务器更改还是其他
  • 对齐装配 x86

    我无法理解align 我尝试运行以下命令 section data align 4 xs dw 0xA1A2 ys db 0xB1 0xB2 0xB3 0xB4 看看每个字节是什么 我希望它是内存中的一个连续块 如下所示 for insta
  • 从 `async fn` 返回的 future 的具体类型是什么?

    我应该使用什么类型的向量来存储 future 我尝试在同一个 URL 上发出多个并发请求 并将所有 future 保存到向量中以供使用join all 如果我没有明确设置向量的类型 则一切正常 我知道 Rust 可以找到变量的正确类型 CL
  • “升级”到 OSX Yosemite 后 RStudio/R 中的 rJava 加载错误

    我最近从 OSX Mountain Lion 升级 到 Yosemite 并从 R 3 1 3 升级 到 3 2 升级后 当我打开 R 或 RStudio 时 我收到一条弹出消息 说我需要安装 Java 6 此外 加载rJava或任何依赖于
  • 指向不同 Worklight 服务器的 Worklight 应用程序

    我想通过 App Store 分发我的 Worklight 应用程序 问题是 用户必须根据他们所属的公司指向不同的 Worklight Server 但我不希望我的用户能够看到 Worklight Server URL 或能够自行更改它 这
  • Python 中非线性二阶 ODE 的 Rk4 积分器

    我在大学的一个项目中 必须使用 Python 实现 Runge Kutta 4 阶积分器 我知道我可以使用 Sympy 但这里的目标是实现该方法 代码已用 Fortran 语言编写 所以基本上我有一个包含正确解决方案值的数据库 并且我必须在
  • 亚音速3联盟可能吗?

    我有一个像这样的架构 菜单 gt 页面 gt 页面角色 gt ASPNetRoles 菜单有一个 CategoryID 我想返回 CategoryID 为 6 的所有菜单项 某些菜单项具有 PageID 的外键 页面可以有 1 个或多个角色
  • 如何将支持库中的操作栏添加到 PreferenceActivity 中?

    操作栏兼容性已添加到支持库 修订版 18 中 它现在具有ActionBarActivity用于在旧版本的 Android 上使用操作栏创建活动的类 有没有办法将支持库中的操作栏添加到PreferenceActivity 以前我用过动作栏夏洛
  • 使用 API 在 Azure Key Vault 中创建密钥

    我是通过指定的订阅创建的 Azure Key Vault 跟着这篇文章 https learn microsoft com en us rest api keyvault keyvaultpreview vaults createorupd
  • 为什么对象键会转换为“[object Object]”?

    这段代码 var a b key b c key c a b 111 a c 222 console log a b 输出 222 不是 111 解释 b and c都将转换为 object Object 有人可以解释这是为什么吗 obje