JavaScript

[Javascript] reduce(function(accumulator, currentValue, index, array), initialValue)

hellosonic 2023. 8. 3. 16:55

배열.reduce(function(accumulator, currentValue, index, array), initialValue) : reduce() 함수는 배열의 요소를 순차적으로 순회하면서, reducer 함수를 실행하고 하나의 결과값을 반환한다.

  • 배열 요소의 순회initialValue의 설정 유무에 따라 순회를 시작하는 index 1부터 시작할수도 있고 index 1부터 시작할수도 있다.
  • 주로 배열 요소의 합계를 계산하는데 사용되며, 배열 또는 객체로 반환할수도 있다.
  • accumulator(필수) : 누적되는 값. callback 함수의 반환값을 누적
    - initialValue가 있을 경우 : callback의 최초 호출 시 initialValue 값으로 초기화.
    - intialValue가 없을 경우 : 배열의 0번째 인덱스 값으로 초기화
  • currentValue(필수) : 현재 배열의 요소
  • index(생략 가능) : 현재 배열 요소의 index
  • array(생략 가능) : reduce 함수를 호출한 배열
  • initialValue(생략 가능) : callback의 최초 호출 시 accumulator 초기값
var array = [1,2,3,4,5];
    
var sum = array.reduce(function add(tempSum, currentValue){
    return tempSum + currentValue;
}, 0);
    
console.log(sum); // 15