在 AngularJS 中,计算数组中值的总和通常可以使用循环来执行。但是,为了促进代码可重用性,请考虑更有效的方法。
不要使用显式循环,而是利用reduce方法来计算总和。这是一个优化的函数:
$scope.sum = function(items, prop) { return items.reduce( function(accumulator, currentItem) { return accumulator + currentItem[prop]; }, 0 // Optional starting value ); };
现在,您可以对具有自定义属性名称的任何数组重用此函数:
// For the $scope.traveler array $scope.travelerTotal = $scope.sum($scope.traveler, 'Amount'); // For a different array, e.g. $scope.expenses $scope.expensesTotal = $scope.sum($scope.expenses, 'Cost');
这种方法提供了几个优点:
以上是如何在 AngularJS 中有效地求和数组属性值?的详细内容。更多信息请关注PHP中文网其他相关文章!