reduce

진성·2022년 4월 30일
0

자바스크립트

목록 보기
17/23

reduce는 자바스크립트 배열 메서드 중 하나이다.

reduce() 메서드는 배열의 각 요소에 대해 주어진 리듀서(reducer) 함수를 실행하고, 하나의 결과값을 반환합니다. mdn

리듀스(reduce)는 배열안의 각 요소의 콜백 함수를 실행하는데 이때 네 개의 인자를 가진다.

  • 누산기 (acc)
  • 현재 값 (cur)
  • 현재 인덱스 (idx)
  • 원본 배열 (src)

콜백 함수의 반환 값은 누산기에 할당되고, 누산기는 순회 중에는 유지가 되므로 최종 결과는 하나의 값이 된다.

이때 추가로 리듀스에는 초기값(initalValue)이 존재한다.
콜백 함수의 최초 호출에서 첫 번째 인수에 제공해주는 값으로 만약이 초기값을 제공하지 않는다면 배열의 첫 번째 요소를 사용한다.
또한 빈 배열일 경우에는 이 초기값을 주지 않으면 호출 오류가 발생하게 된다.

arr.reduce((acc, cur, idx, src) => {
  console.log(acc, cur, idx, src)
  return acc + cur
})

위 코드는 대표적인 예시로 배열 안의 모든 값을 더해주는 코드이다.

profile
풀스택 진행중...

0개의 댓글