배열.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