我有这个数组,我想合并它内的对象。合并阵列中的对象并保持相同属性的最高值
[null, null, {"1":1},{"2":1},{"3":1},{"2":2},{"5":1}]
我想过用这样的事情:
var o1 = { a: 1, b: 1, c: 1 };
var o2 = { b: 2, c: 2 };
var o3 = { c: 3 };
var obj = Object.assign({}, o1, o2, o3);
console.log(obj); // { a: 1, b: 2, c: 3 }
然而,属性是由具有相同的属性在参数后下令
其他对象覆盖我想要的是保持最高值可用于相同的属性。
在我的例子,我有{"2":1}
和{"2":2}
,我想保持{"2":2}
因为2
可用于"2"
属性的最高值。
我想结束于这个对象:{"1":1,"2":2,"3":1,"5":1}
。
你确定它总是保持最高值每一个属性? – Emilio