Find sum by property Angularjs
HTML
<script src="https://code.angularjs.org/1.4.9/angular.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-filter/0.5.8/angular-filter.js"></script>
<div ng-controller="MyController">
<ul>{{items}}
<li ng-repeat="(key, items) in data | groupBy: 'Id'">
id: {{key}}, price: {{items[0].price}}, Sum: {{getVolumeSum(items)}}
</li>
</ul>
</div>
JavaScript
var myApp = angular.module('myApp', ['angular.filter']);
myApp.controller('MyController', function($scope) {
$scope.data = [
{Id:1,price:500},
{Id:1,price:200},
{Id:1,price:150},
{Id:2,price:500},
{Id:2,price:450},
{Id:3,price:100},
{Id:3,price:100},
{Id:4,price:100}
];
$scope.getVolumeSum = function(items) {
return items
.map(function(x) { return x.price; })
.reduce(function(a, b) { return a+b });
};
});