자바스크립트 reduce()

reduce()

배열의 각 요소를 순회하면서 하나의 결과값을 만들어내는 함수에요.
값들을 누적하거나, 배열을 객체, 숫자, 다른 배열 등으로 변환할 자주 사용해요.


매개값

array.reduce( 콜백함수,  초기값(선택) )

 

콜백함수 매개값

function callback(accumulator, currentValue, currentIndex, array) { ... }

 

  • accumulator: 누적값. 이전 콜백 반환값을 기억함.
  • currentValue: 현재 처리 중인 요소.
  • currentIndex: 현재 요소의 인덱스.
  • array: reduce를 호출한 배열.

 


예시

배열의 합

const numbers = [1, 2, 3, 4, 5]; 

const sum = numbers.reduce((acc, cur) => acc + cur, 0); 

console.log(sum); // 출력: 15
  • acc: 누적 합계
  • cur: 현재 요소
  • 0: 초깃값

요약

목적 배열을 하나의 값으로 축약
주로 사용하는 경우 합계, 곱셈, 객체 변환, 그룹핑, 통계 계산
초깃값 명시하는 것이 권장됨
반환값 누적 결과값