티스토리 뷰
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 의 값임
'Javascript & Typescript' 카테고리의 다른 글
[Javascript] substring(), slice() 비교 (0) | 2021.11.13 |
---|---|
[Javascript] substring() method (0) | 2021.11.13 |
[Javascript] filter() method (0) | 2021.11.12 |
[Javascript] slice() 메소드 (0) | 2021.11.12 |
[Javascript] splice() 메소드 (0) | 2021.11.11 |