효율적인 배열 값 합산
이 질문은 여러 배열에 걸쳐 특정 속성의 총합을 계산하기 위한 효율적인 솔루션을 찾습니다.
문제 명령문
각각 "설명" 및 "금액" 속성이 포함된 개체 배열이 있는 경우 원래 접근 방식에서는 배열을 반복하고 "금액" 값을 점진적으로 추가하는 작업이 포함되었습니다.
$scope.totalAmount = function(){ var total = 0; for (var i = 0; i < $scope.traveler.length; i++) { total = total + $scope.traveler[i].Amount; } return total; }
임의의 성질에 대한 등가법
원하는 해법
$scope.traveler.Sum({ Amount }); $scope.someArray.Sum({ someProperty });
최적화된 솔루션
제안된 솔루션은 이를 달성하기 위해 array.reduce 메서드를 활용합니다. 목표:
$scope.sum = function(items, prop){ return items.reduce( function(a, b){ return a + b[prop]; }, 0); }; $scope.travelerTotal = $scope.sum($scope.traveler, 'Amount');
장점
위 내용은 여러 JavaScript 배열의 특정 속성 값을 효율적으로 합산하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!