JSFiddle - React, Tailwind, and code Playground
by csornmo
HTML
<b>// Result should be</b>
<br><br>
customer: "company1", place: "place1", done: 1 <br>
customer: "company2", place: "place1", done: 2 <br>
customer: "company2", place: "place2", done: 1
JavaScript
var baseData = [
{customer: "company1", place: "place1", done: 1},
{customer: "company2", place: "place1", done: 1},
{customer: "company2", place: "place1", done: 1},
{customer: "company2", place: "place2", done: 1}
]
var newData = {};
baseData.forEach(function(item, index) {
newData[item.customer + item.place] = newData[item.customer + item.place] || { customer: item.customer, place: item.place, done: 0 };
newData[item.customer + item.place].done += item.done;
});
console.log(Object.values(newData));