【发布时间】:2016-06-26 23:25:24
【问题描述】:
我想使用 JS、Underscore 或 JQuery 将 2 个哈希数组合并为 1 个新数组。
这两个数组的长度可能不同,合并将基于 id 属性。相同数组之间的哈希值可能不同,例如:
arr1 id's = [1,5]
arr2 id's = [1,2]
这是我的数组:
arr1 = [{
id: 1
name: 'fred'
},id: 5
name: 'alex'
}];
arr2 = [{
id: 1
wage: '300'
},{
id: 2
wage: '10'
}]
所以基于 id 属性我应该得到以下信息:
arr3 = [{
id: 1
name: 'fred'
wage: '300'
},{
id: 2
wage: '10'
},{
id: 5
name: 'alex'
}]
我尝试使用Merging/extend javascript object arrays based on join of a key property in each,但如果数组长度不同,它就不起作用。有什么帮助吗?
【问题讨论】:
-
@Mil - 请澄清这是否需要绝对考虑
id索引,例如查看我的答案。您提到它,但在示例数据或问题中不清楚,所以请更新 OP。 stackoverflow.com/help/how-to-ask -
要获得答案,请考虑这是明显的重复帖子,请参阅@Oriol 链接。您可以自己回答并接受这一点,尽管在这样做之前将这些答案与此处提供的其他答案进行比较
-
您好 Daniel,感谢您对此提供的帮助,但 Oriol 的建议并没有解决我的问题(尝试了最佳答案)。我还更新了问题,也许现在更清楚了,我认为@charlietfl 明白了我的意思,因为我在开始时没有很好地解释它 - 索引可能会有所不同
标签: javascript jquery arrays underscore.js