reduce( ) 메서드
URL : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce
reduce()
메서드는 배열의 각 요소에 대해 주어진 리듀서 (reducer) 함수를 실행하고, 하나의 결과값을 반환합니다.
리듀서 함수는 네 개의 인자를 가집니다.
1. 누산기 (accumulator) (acc)
2. 현재 값 (cur)
3. 현재 인덱스 (idx)
4. 원본 배열 (src)
리듀서 함수의 반환 값은 누산기에 할당되고, 누산기는 순회 중 유지되므로 결국 최종 결과는 하나의 값이 된다.
구문
arr.reduce(callback[, initialValue]
const array1 = [1, 2, 3, 4];
// 0 + 1 + 2 + 3 + 4
const initialValue = 0;
const sumWithInitial = array1.reduce(
(accumulator, currentValue) => accumulator + currentValue,
initialValue
);
console.log(sumWithInitial);
// Expected output: 10
"callback"
, "initalValue"
) 안에는 callback 과 initalValue가 들어간다.예제
console.log([1,2,3].reduce((acc , cur) => acc + cur));
= 6
예제
console.log([1,2,3].reduce((acc , cur) => acc + cur, 10)); 👨🏻💻10은 initialValue값이다.
= 16