мой вопрос прост,
Мой ввод
[
{ department_id: '28', linear_meter: 6 },
{ department_id: '56', linear_meter: 19 },
{ department_id: '28', square_meters: 20.28 },
{ department_id: '56', square_meters: 18.28827 }
]
И я хочу что-то вроде этого:
[
{
"department_id": 28,
"linear_meters": 6,
"square_meters": 20.28
},
{
"department_id": 56,
"linear_meters": 19,
"square_meters": 18.28827
},
]
Я попробовал это, норезультат не совсем то, что я хочу
var result = arr.reduce(function (res, obj) {
if (!(obj.department_id in res))
res.__array.push(res[obj.department_id] = obj);
else {
res[obj.department_id].linear_meter += obj.linear_meter;
res[obj.department_id].square_meters += obj.square_meters;
}
return res;
}, {__array: []}).__array;
но вывод:
[ { department_id: '28',
linear_meter: NaN,
square_meters: NaN },
{ department_id: '56',
linear_meter: NaN,
square_meters: NaN } ]
Кто-то есть идея?Я тестировал раньше + =
typeof res[obj.department_id].square_meters !== "undefined"
но ничего не изменилось ...