[JavaScript] Array.reduce()

2022. 7. 31. 15:29JavaScript

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

arr.reduce(callback[, initialValue])

파라미터

  1. callback function
    • accumulator - 누산기는 callback 함수의 반환 값 누적
    • currentValue - 배열의 현재 요소
    • current index(optional) - 배열의 현재 요소의 인덱스 initialValue를 제공한 경우 0, 아니면 1부터 시작
    • array(optional) - 호출한 배열
  2. initialValue(Optional)
    • 최초 callbakc 함수 실행 시 첫번째 인수에 제공되는 값, 초기값을 제공하지 않을 경우 배열의 첫 번째 요소를 사용하고, 빈 배열에서 초기값이 없이 reduce 호출 시 에러 발생
// 배열의 모든 값 더하기 
let arr = [1,2,3,4,5];
let sum = arr.reduce((x,y) => x + y);
console.log(sum); // 15

💡 initialValue가 없을 경우 첫 번째 콜백에서 TypeError가 발생

 

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