在 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中文網其他相關文章!