有两个数组,我想合并两个数组,并仅在数据名称匹配时对它们求和。否则,如果名称不匹配,则仅合并或推送数组
var demo = {
"key1": [{"id": 1, "name": "Robbie", "kill": 12 , "knock": 1},
{"id": 2, "name": "Mohamand", "kill": 12 , "knock": 4},
{"id": 3, "name": "Jebisha", "kill": 8 , "knock": 4}],
"key2": [
{"id": 1, "name": "Robbie", "kill":12 , "knock": 4},
{"id": 2, "name": "Mohamand", "kill": 13 , "knock": 3},
{"id":3, "name": "Jebisha", "kill": 5 , "knock": 1},
{"id":4, "name": "Alvida", "kill": 8 , "knock": 5}]
};
这是我的脚本文件
var res = demo.key1.map(function(item, idx) {
return Object.keys(item).reduce(function(obj, key) {
if (key == 'name') {
obj[key] = item[key];
} else {
obj[key] = item[key] + demo.key2[idx][key];
}
return obj;
}, {});
});
console.log(res);
我的结果是这样的
0: {id: 1, name: "Robbie", "kill: 24 , knock: 5},
1: {id: 2, name: "Mohamand","kill: 25 , knock: 7},
2: {id: 3, name: "Jebisha", "kill: 13 , knock: 5},
我的预期输出是这样的
0: {id: 1, name: "Robbie", "kill: 24 , knock: 5},
1: {id: 2, name: "Mohamand","kill: 25 , knock: 7},
2: {id: 3, name: "Jebisha", "kill: 13 , knock: 5},
3: {"id":4, "name": "Alvida", "kill": 8 , "knock": 5}
HUH函数
饮歌长啸
慕妹3146593
墨色风雨
HUWWW
相关分类