原始数据是这样的
var d = {A1:{name:"A1",value:10}, A2:{name:"A2",value:8}}
var l = [{name: "A1", 1min: 1, 2min:10}, {name: "A2", 1min:5, 2min:40}}
我需要做的是将d
和l
合并在一起以获得相同的name
,结果将是这样的:
{A1: {name:"A1", value:10, 1min: 1, 2min:10},
A2: {name: "A2", value:8, 1min:5, 2min:40}}
我认为if
和loop
可以帮助我解决这个问题。但对于非常大的数据集,是否有更好、更简单的方法来做到这一点?
最佳答案
这有效吗?
for (var i=0; i < l.length; ++i) {
var tmp = l[i];
for (var key in tmp) {
d[ tmp.name ][ key ] = tmp[key];
}
}
关于javascript - 合并对象和数组内的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17944202/