GroupBy_Sum_Javascript

by Fulvio Cezar Canducci Dias

JavaScript

const fruits = [ { "description": "orange", "Amount": 50 },
           { "description": "orange", "Amount": 50 },
           { "description": "apple", "Amount": 75 }, 
           { "description": "kiwi", "Amount": 35 }, 
           { "description": "apple", "Amount": 25 }];
           
let results = [];           

for(let i = 0; i < fruits.length; i++) {
	let index = results.findIndex(function(a){
  	return a.description === fruits[i].description;
  });
	if (index < 0)	{
  	results.push({description: fruits[i].description, amount: fruits[i].Amount});
  } else {
  	results[index].amount = results[index].amount + fruits[i].Amount;
  }
}

console.log(results);