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 datas = new Set(
	fruits.map(
		function(x){
  		return x.description;
  })
);

let results = [];

datas.forEach(function(a) {
	results.push({
  	description: a, 
    amount: fruits.filter(function(x){
    	return x.description === a;
    }).reduce(function(b, c) {
    	return b + c.Amount;
    }, 0)
  });
});

console.log(results);