I have the following array object
[{ count: 2, created_data: "2022 07 19" },
{ count: 4, created_data: "2022 07 19" },
{ count: 4, created_data: "2022 07 19" },
{ count: 1, created_data: "2022 07 20" },
{ count: 1, created_data: "2022 07 20" }]
I would want to add the objects and get their sums based on the dates. So the result should look something like this
[{
"2022 07 19" : 10,
"2022 07 20" : 2
}]
Just group by the desired property using reduce
method.
var data = [{ count: 2, created_data: "2022 07 19" },
{ count: 4, created_data: "2022 07 19" },
{ count: 4, created_data: "2022 07 19" },
{ count: 1, created_data: "2022 07 20" },
{ count: 1, created_data: "2022 07 20" }]
var result = [data.reduce(function(agg, item) {
agg[item.created_data] = (agg[item.created_data] || 0) + item.count
return agg
}, {})]
console.log(result)