JAVASCRIPT

reduce() 정리

HTT 2024. 8. 14. 14:30
reduce() 

 

: 배열의 각 요소에 대해 주어진 reducer() 함수를 실행하고, 하나의 결과값을 반환

reducer() 함수의 반환 값은 누적값에 할당되고, 누적값은 순회 중 유지되므로 결국 최종 결과는 하나의 값이 된다.

 

  1. 누적 (acc)
  2. 현재 값 (cur)
  3. 현재 인덱스 (idx)
  4. 원본 배열 (src)

 

매개변수
- callback

배열의 각 요소에 대해 실행할 함수로 다음 네 가지 인수를 받는다.

 

- accumulator

누산기는 콜백의 반환값을 누적한다.

콜백의 이전 반환값 또는 콜백의 첫 번째 호출이면서 initialValue를 제공한 경우에는 initialValue의 값이 할당된다.

 

- currentValue

처리할 현재 요소

 

- currentIndex

처리할 현재 요소의 인덱스로, initialValue를 제공한 경우 0, 아니면 1부터 시작한다.

 

- initialValue 

콜백백의 최초 호출에서 첫 번째 인수에 제공하는 값. 초기값을 제공하지 않으면 배열의 첫 번째 요소를 사용한다. 빈 배열에서 초기값 없이 reduce()를 호출하면 오류가 발생한다.

 

// 사용법
arr.reduce(callback[, initialValue])

 

const array1 = [1, 2, 3, 4];

// 0 + 1 + 2 + 3 + 4
const initialValue = 0;
const sumWithInitial = array1.reduce(
  (accumulator, currentValue) => accumulator + currentValue,
  initialValue,
);

console.log(sumWithInitial);
// Expected output: 10

 

 

 

 

출처

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce