【发布时间】:2016-04-20 06:57:07
【问题描述】:
有没有比我在下面所做的更好的方法来遍历两个对象数组?这样做似乎很乱。我正在使用 lodash。
var array1 = [
{id:4356, name: 'James', sex: 'male'},
{id:7899, name: 'Jimmy', sex: 'male'},
{id:2389, name: 'Dawn', sex: 'female'}
];
var array2 = [
{id:4356, salary: 1000, job: 'programmer'},
{id:7899, salary: 2000, job: 'tester'},
{id:2389, salary: 3000, job: 'manager'}
];
示例输出:
console.log(array1[0])
{
id:4356,
name: James,
sex: male,
person: {
id:4356,
salary: 1000,
job: programmer
}
}
功能:
_.forEach(array1, function(item1) {
_.forEach(array2, function(item2) {
if(item1.id === item2.id){
item1.person = item2;
}
});
});
【问题讨论】:
-
先将其中一个数组转换成
id -> person映射? -
Gruff Bunny 的回答(上面链接)非常全面。
标签: javascript arrays object lodash