首页 >web前端 >js教程 >如何基于共享密钥合并两个对象数组而不需要显式密钥迭代?

如何基于共享密钥合并两个对象数组而不需要显式密钥迭代?

Linda Hamilton
Linda Hamilton原创
2024-12-08 22:06:12318浏览

How Can I Merge Two Arrays of Objects Based on a Shared Key Without Explicit Key Iteration?

基于键合并对象数组

目标

任务是基于公共键合并两个对象数组,而不需要迭代他们的钥匙。

示例场景

考虑以下两个数组:

Array 1:
[
  { id: "abdc4051", date: "2017-01-24" },
  { id: "abdc4052", date: "2017-01-22" }
]

Array 2:
[
  { id: "abdc4051", name: "ab" },
  { id: "abdc4052", name: "abc" }
]

目标是根据id键合并这些数组,得到:

[
  { id: "abdc4051", date: "2017-01-24", name: "ab" },
  { id: "abdc4052", date: "2017-01-22", name: "abc" }
]

无需迭代的解决方案键

无需迭代对象即可实现此目的键:

let arr1 = [
    { id: "abdc4051", date: "2017-01-24" },
    { id: "abdc4052", date: "2017-01-22" }
];

let arr2 = [
    { id: "abdc4051", name: "ab" },
    { id: "abdc4052", name: "abc" }
];

let arr3 = arr1.map((item, i) => Object.assign({}, item, arr2[i]));

console.log(arr3);

此代码使用 Object.assign() 方法合并两个数组中同一索引处的对象的属性。结果是一个具有两个数组的组合属性的新数组。

以上是如何基于共享密钥合并两个对象数组而不需要显式密钥迭代?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn