【发布时间】:2021-05-24 00:02:58
【问题描述】:
这是我的代码 sn-p
let mainData = [
{ "date": "210201", "cordinatePoint": 0, "current": 105827649.12000011, "previous": null },
{ "date": "210101", "cordinatePoint": 0, "previous": 0, "current": null },
{ "date": "210202", "cordinatePoint": 1, "current": 0, "previous": null },
{ "date": "210102", "cordinatePoint": 1, "previous": 0, "current": null },
{ "date": "210102", "cordinatePoint": 2, "previous": 0, "current": null }
];
let data = [];
for (let i = 0; i < mainData.length - 1; i++) {
if (mainData[i].cordinatePoint === mainData[i + 1].cordinatePoint) {
mainData[i].current = mainData[i].current + mainData[i + 1].current;
mainData[i].previous = mainData[i].previous + mainData[i + 1].previous;
data.push(mainData[i]);
}
}
console.log(data); // where is cordinatePoint:2 ???
我想根据cordinatePoint 找到重复的键值并添加它们的current 和previous 值。我什至想推送新数组中的非重复项。我无法实现第二部分。有人可以谈谈吗?
【问题讨论】:
-
尝试一个 reduce 并添加另一个数组以推送到 reduce 中
标签: javascript arrays duplicates