test
Home IT/WEB 객체 배열 내 특정 키 값 합산하기, reduce, _.sumby

[javascript]객체 배열 내 특정 키 값 합산하기, reduce, _.sumby

객체 배열에서 특정 키의 값을 합치는 것은 데이터 처리에 있어 자주 마주칩니다.. 이 작업을 수행하는 방법은 여러 가지가 있지만, 여기서는 주로 JavaScript의 reduce 메서드와 Lodash 라이브러리의 _.sumBy 함수를 사용하는 방법으로 설명하겠습니다.

JavaScript의 reduce() 함수 사용하기

inline ad

reduce 메서드는 배열의 각 요소에 대해 주어진 리듀서(reducer) 함수를 실행하고, 하나의 결과값을 반환합니다. 이 메서드를 사용하여 객체 배열에서 특정 키의 값을 합칠 수 있습니다.

위 예시에서는 items 배열의 각 객체에서 quantity 키의 값을 합치고 있습니다. reduce 함수의 첫 번째 인자는 누적값(sum)과 현재 처리하고 있는 요소(item)를 인자로 받는 콜백 함수이며, 두 번째 인자는 누적값의 초기값(0)입니다.

const items = [
  { name: '사과', quantity: 2 },
  { name: '바나나', quantity: 3 },
  { name: '오렌지', quantity: 5 }
];

const totalQuantity = items.reduce((sum, item) => sum + item.quantity, 0);

console.log(totalQuantity); // 10

Lodash의 _.sumBy 함수 사용하기

Lodash 라이브러리는 JavaScript에서 데이터를 처리하는 데 유용한 다양한 유틸리티 함수를 제공합니다. _.sumBy 함수는 배열의 각 요소에서 특정 키의 값을 합산하는 데 사용됩니다.

_.sumBy 함수는 첫 번째 인자로 배열을, 두 번째 인자로 합산할 키의 이름을 문자열로 받습니다. 이 방법은 코드를 간결하게 작성할 수 있으며, 복잡한 데이터 구조를 처리할 때 특히 유용합니다.

const items = [
  { name: '사과', quantity: 2 },
  { name: '바나나', quantity: 3 },
  { name: '오렌지', quantity: 5 }
];

const totalQuantity = _.sumBy(items, 'quantity');

console.log(totalQuantity); // 10

관련문서

RECENT POSTS

개미를 퇴치하는 자연적인 방법 중 가장 효과적인 방법 6가지

개미를 자연스럽게 퇴치하는 여러 가지 방법 중 가장 효과적인 몇 가지 방법을 소개하겠습니다. 이 방법들은 모두 집에서 쉽게 구할 수 있는 재료를 사용하여 개미를...

부심장을 지키는 올바른 식단: 먹으면 좋은 음식과 나쁜 음식

부정맥 환자는 심장 건강을 유지하고 증상을 관리하기 위해 특정 음식을 피하고, 심장 건강에 좋은 음식을 섭취하는 것이 중요합니다. 다음은 부정맥 환자가 피해야 나쁜 음식과...

부정맥 arrhythmia: 정의, 원인, 증상, 진단 및 검사, 치료 방법, 예방 방법, 주의사항, 생활 습관

정의 부정맥(Arrhythmia)은 심장의 정상적인 리듬이 불규칙해지거나 비정상적으로 빨라지거나 느려지는 상태를 말합니다. 이는 심장의 전기적 신호 전달에 문제가 생겨 발생하며, 다양한 원인과 증상을 가지고 있습니다. 원인 부정맥의 원인은...

폐렴 pneumonia: 정의, 원인, 증상, 진단 및 검사, 치료 방법, 예방 방법, 주의사항, 생활 습관

정의 폐렴(Pneumonia)은 폐의 폐포(air sacs)에 염증이 생겨 액체나 고름이 차는 질환입니다. 주로 세균, 바이러스, 곰팡이 등의 감염에 의해 발생하며, 심한 경우 생명을 위협할 수 있습니다. 원인 폐렴의...