Javascript 对象数组和 indexOf 的奇怪之处

2024-01-05

不太明白这里发生了什么。给定数组 (arr):

[
    {
        "first_name": "Dan",
        "last_name": "Woodson",
        "id": 1
    },
    {
        "first_name": "Jen",
        "last_name": "Woodson",
        "id": 2
    },
    {
        "first_name": "Yoshi",
        "last_name": "Woodson",
        "id": 3
    }
]

和对象(obj):

{
    "first_name": "Yoshi",
    "last_name": "Woodson",
    "id": 3
}

为什么会arr.indexOf(obj) return -1(特别是因为我在函数前面使用它的“id”参数从数组中检索了对象)?


Array.indexOf()仅当提供的对象是时才对对象起作用与您放入的对象完全相同.

一个精确的copy不足,必须是完全相同的物体,即数组中必须存在某个对象,使得:

arr[i] === obj

您需要展示您如何检索该对象。

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

Javascript 对象数组和 indexOf 的奇怪之处 的相关文章

随机推荐

  • 如何将 META 重新映射到 ALT?

    我在 Ubuntu 中使用 emacs 如何将 META 重新映射到 ALT 键 如果您在 gnome 终端中运行 emacs 则 gnome 终端可能会捕获您的 alt 键以打开 gui 菜单 文件 编辑等 您可以通过选择 编辑 gt g
  • Docker:服务器的空响应

    我在连接 docker 容器时遇到问题 服务器返回空响应 但配置似乎是正确的 当我使用 docker compose up 命令时 一切看起来都很好并且工作正常 但是我从服务器得到空响应 我仔细检查了端口映射 但我没有注意到任何东西 这是撰
  • git 不显示 unicode 文件名

    我在 Mac OS X 上使用 git 2 5 4 我的文件名包含 git 正在用转义符显示它 有没有办法让它使用unicode并显示字符 终端显然可以处理它 gt ls S l gt git status Untracked files
  • Discord.py重写获取公会成员列表

    只是想知道我将如何获取公会中所有当前成员的列表 然后将其作为消息返回 如果你想获取特定公会的成员数量 可以使用len guild members 如果您想获取列表 只需使用guild members 如果你想发送它 它可能不起作用 因为 D
  • Subversion - 是否可以禁用所有提交并使存储库只读?

    我有一个颠覆存储库 它是另一个远程存储库的镜像 我每周都会使用 svnsync 来镜像存储库 镜像存储库 本地副本 仅用于备份 我希望将镜像存储库保持为只读 即任何人都不能对此存储库提交任何更改 但他们可以使用它来读取源文件 因为它比远程存
  • 如何使用 mono 编译目录中的所有文件?

    我想用 mono 编译一个由多个文件组成的 C 应用程序 全部在 1 个目录中 我需要什么命令 Use gmcs out yourapp exe pkg dotnet cs or gmcs out yourapp exe pkg dotne
  • 从双精度数中删除 .0

    我正在尝试动态显示字符串中的数字 因此如果数字有小数 则显示它们 但如果没有 则不显示 0 示例 将 5 5 显示为 5 5 将 5 0 显示为 5 这是我到目前为止所拥有的 答案是双 double temp answer long tem
  • 如何在Python中进行指数和对数曲线拟合?我发现只有多项式拟合

    我有一组数据 我想比较哪一行最能描述它 不同阶的多项式 指数或对数 我使用 Python 和 Numpy 对于多项式拟合 有一个函数polyfit 但我没有发现这样的指数和对数拟合函数 有吗 或者另外如何解决 用于装配y A B log x
  • 显示模式对话框并获取结果

    我有一个静电WindowService帮助我创建新窗口和模式对话框的类 到目前为止 我所拥有的是这样的
  • 将 SQL Server 表加载到 pandas DataFrame 中的速度缓慢

    当使用 pyodbc 和主要函数 pandas read sql query pyodbc conn 从 SQL Server DB 加载超过 1000 万条记录时 Pandas 会变得异常缓慢 以下代码最多需要 40 45 分钟才能从 S
  • 将服务注入 Ember 对象 [不是 Ember 控制器]

    我正在尝试将 Ember 服务注入 Ember 对象 但不断收到以下错误 Assertion Failed Attempting to lookup an injected property on an object without a c
  • 想要在 iPhone 上显示 3D 模型:如何开始? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的
  • Postgres 将子查询结果括在括号中

    不要注意所提供的查询的无用性 它只是复杂查询的简化部分 我运行查询 SELECT elem FROM SELECT id FROM data AS elem 它产生的结果是 elem 5 4 24 3 23 为什么每个值都用括号括起来 所以
  • 没有依赖于模板参数的参数

    我正在尝试执行以下操作 template
  • 捕获所有键盘输入

    首先 我知道这可以用于键盘记录器 我不打算这样做 我正在寻找一个应用程序来侦听自定义按键组合 只是为了自动执行一些非常烦人的任务 有没有办法捕获键盘的所有输入 您似乎正在寻找RegisterHotKey http msdn microsof
  • 如何使用python脚本转换dos2unix csv文件

    我想在 Windows 中使用 python 将 csv 文件转换为 dos2unix 格式 现在我正在通过将 csv 文件放置在工作区 服务器 中并在 putty 中运行命令来手动执行操作 命令 dos2unix file receive
  • Compose UIBarButtonItem 在进入视图时会稍微改变位置

    当在导航栏中使用 UIBarButtonSystemItemCompose 按钮 呈现新视图时 位置会稍微偏离并在视图进入视图后进行调整 我认为这是iOS 使用8 3版本 中的一个错误 仅在使用 UIBarButtonSystemItemC
  • Puppet 6 和模块 puppetlabs/accounts 不会以 Hiera YAML 格式创建用户帐户

    当我跑步时puppet agent test我没有错误输出 但用户没有创建 我的木偶 hira yaml 配置是 version 5 datadir etc puppetlabs code environments data hash ya
  • 使用 BFS 查找网格上对象的可能路径数

    我有一个代表网格的矩阵 并且想找出对象可以移动到的所有可能的位置 物体只能水平或垂直移动 假设下面的示例是我正在查看的网格 它表示为二维矩阵 对象是 0 是对象可以移动到的空白空间 1 是对象无法跳过或继续的墙壁 如果该对象只能水平或垂直移
  • Javascript 对象数组和 indexOf 的奇怪之处

    不太明白这里发生了什么 给定数组 arr first name Dan last name Woodson id 1 first name Jen last name Woodson id 2 first name Yoshi last n