[Javascript] reduce() method

[Javascript] reduce() method

reduce() method

reduce(function(accumulator, currentValue, currentIndex, array) { return accumulator + currentValue; }, initialValue); // 애로우 함수를 사용할 수도 있음 reduce( (prev, curr) => prev + curr, initValue );

배열의 빈 요소를 제외한 각 요소에 리듀서(reducer) 함수를 실행하고, 하나의 누적 계산 결과값을 반환

리듀서 함수는 누산기(acc), 현재 값(curVal), 현재 인덱스(curIndex), 배열(arr) 네 개의 인자를 가짐

accumulator 누산기: 콜백 함수의 반환값을 누적해줌

currentValue : 현재 처리할 요소

currentindex (optional) : 현재 처리할 요소의 인덱스

: 현재 처리할 요소의 인덱스 array (optional) : 원본 배열

1) initialValue 를 제공하는 경우

accumulator 는 initialValue 와 같음

currentValue 는 배열의 인덱스 0 의 값과 같으며 0 번째부터 함수를 호출함

배열의 길이 만큼 reducer 함수를 호출

2) initialValue 를 제공하지 않는 경우

accumulator 는 배열의 인덱스 0 의 값과 같으며, currentValue는 배열의 인덱스 1 의 값임

from http://zubetcha.tistory.com/54 by ccl(A) rewrite - 2021-11-13 10:02:22