Javascript获取对象内的值并将它们一起添加?

时间:2014-08-17 21:45:46

标签: javascript

我想知道是否可以在Angular中循环设置对象,然后对检索到的值执行数学运算。

我目前有一个对象($scope.basketItems),我想知道是否有可能(如果是这样)循环遍历$scope.basketItems内的每个项目,提取每个Price并将所有Price加在一起以创建总数?

2 个答案:

答案 0 :(得分:1)

我很可能会使用lodash或下划线,如下所示:

$scope.basketItems = [
    {name: 'bob', price: 50},
    {name: 'tim', price: 25},
    {name: 'sarah', price: 25}
];
$scope.sum = 0;

_.forEach( $scope.basketItems, function(item) {
    $scope.sum += item.price;
});

sum = 100;

答案 1 :(得分:1)

使用Javascript' reduce方法,不需要任何外部库,例如:

$scope.basketItems = [{price: 123},{price: 456}];

$scope.total = $scope.basketItems.reduce(
    function(a,b) {
        return a.price + b.price;
    }
);