2

原始数据是这样的

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}}

我需要做的是将相同的合并dl在一起name,结果将是这样的:

{A1: {name:"A1", value:10, 1min: 1, 2min:10}, 
 A2: {name: "A2", value:8, 1min:5, 2min:40}}

我认为if并且loop可能会帮助我解决这个问题。但是对于非常大的数据集,有没有更好更简单的方法来做到这一点?

4

1 回答 1

2

这行得通吗?

for (var i=0; i < l.length; ++i) {
    var tmp = l[i];

    for (var key in tmp) {
        d[ tmp.name ][ key ] = tmp[key];
    }
}
于 2013-07-30T10:17:47.080 回答