reduce란
js의 Array에서 map과 foreach 와 같이 자주 쓰이는 함수 중 하나인 reduce메서드는 배열의 각 요소에 대해 주어진 리듀서 함수를 실행하고, 하나의 결과값을 반환한다.
ex)
1 |
|
reduce 구현해보기
reduce 함수에서 콜백 함수는 accumulator, currentValue, currentIndex, array 이렇게 4가지의 인자를 받는다. 그리고 주의할 점은 reduce함수에 initialValue를 제공한 경우에는 accumulator의 초기값이 initialValue가 되서 reduce는 배열 첫 인덱스부터 순회하지만, initialValue가 제공되지 않으면, reduce는 인덱스 0을 건너뛰고 인덱스 1부터 순회하고 accumulator는 배열 첫 번째 값과 같다.
이러한 점을 주의해서 initialValue의 유무에 따라 다르게 작동하는 함수를 작성하면 된다.
1 |
|
참고자료 https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce