1 回答
TA贡献1802条经验 获得超5个赞
你可以简单地使用Array.reduce函数
let jsonData = [
{"id": "1", "object": "pen"},
{"id": "4", "object": "bag"},
{"id": "2", "object": "paper"},
{"id": "5", "object": "bottle"},
{"id": "3", "object": "notepad"},
{"id": "1", "object": "pen"},
{"id": "4", "object": "bag"},
{"id": "3", "object": "notepad"},
{"id": "3", "object": "notepad"},
{"id": "1", "object": "pen"},
{"id": "2", "object": "paper"},
{"id": "1", "object": "pen"},
];
let summary = jsonData.reduce( (ac, el) => {
let obj = ac.find(e => e.object == el.object);
if (!obj) {
obj = {object: el.object, unit: 0};
ac.push(obj);
}
obj.unit = obj.unit + 1;
return ac;
}, []);
console.log(summary);
添加回答
举报
