JavaScript의 객체 배열 합계
Shivam Arora
2023년1월30일
2021년7월4일

배열은 유사한 유형의 요소를 저장할 수 있으며 여기에는 객체도 포함됩니다.
이 기사에서는 JavaScript에서 객체 배열의 값을 합산하는 더 좋고 효율적인 방법을 배웁니다.
예제에서는 다음 배열의 모든 개체에 대한Amount
를 합산합니다.
fruits = [
{ description: 'orange', Amount: 50},
{ description: 'orange', Amount: 50},
{ description: 'apple', Amount: 75},
{ description: 'kiwi', Amount: 35},
{ description: 'watermelon', Amount: 25 },
];
reduce
함수를 사용하여 JavaScript에서 객체 배열의 값 합계
sum()
이라는 함수를 만들고reduce()
메서드를 사용하여 배열을 단일 값으로 줄일 수 있습니다. 이는 배열의 모든 값의 합계입니다.
이 방법은 단일 패스에서 값을 동시에 필터링하고 매핑하는 데 도움이됩니다.
다음 코드에서이를 구현합니다.
class fruitCollection extends Array {
sum(key) {
return this.reduce((a, b) => a + (b[key] || 0), 0);
}
}
const fruit = new fruitCollection(...[
{ description: 'orange', Amount: 50},
{ description: 'orange', Amount: 50},
{ description: 'apple', Amount: 75},
{ description: 'kiwi', Amount: 35},
{ description: 'watermelon', Amount: 25 },]);
console.log(fruit.sum('Amount'));
출력:
235
map()
및reduce()
함수를 사용하여 JavaScript에서 객체 배열의 값 합계
map()
함수는 배열에있는 모든 요소의 값을 각각 변경하여 새 배열을 만듭니다. 그런 다음 필터 기능을 사용하여 해당 범주에 속하지 않는 값을 제거합니다. 마지막으로reduce()
함수는 모든 값을 가져 와서 필요한 합계 인 단일 값을 반환합니다.
예를 들면
fruits = [
{ description: 'orange', Amount: 50},
{ description: 'orange', Amount: 50},
{ description: 'apple', Amount: 75},
{ description: 'kiwi', Amount: 35},
{ description: 'watermelon', Amount: 25},];
const sumall = fruits.map(item => item.amount).reduce((prev, curr) => prev + curr, 0);
console.log(sumall);
출력:
235
관련 문장 - JavaScript Object
- JavaScript의 배열에서 객체 검색
- JavaScript 배열의 객체 업데이트
- JavaScript에서 객체 복사
- JavaScript의 객체 안의 객체
- JavaScript 객체를 JSON으로 변환
- JavaScript 객체의 키 가져오기