728x90
🎯
{ reduce() 메서드 }
무엇인가요?
배열의 각 요소에 대해 리듀서(reducer) 함수를 실행하고, 하나의 결과값을 반환하는 배열 고차 함수입니다.
어떻게 사용하나요?
const array1 = [1, 2, 3, 4];
const reducer = (previousValue, currentValue) => previousValue + currentValue;
// 1 + 2 + 3 + 4
console.log(array1.reduce(reducer)); // 10
// 5 + 1 + 2 + 3 + 4
console.log(array1.reduce(reducer, 5)); // 15
reduce 메서드 구성: reduce(reducer, initialValue);
reducer 함수 구성: reducer = function (acc, cur, idx, src) { return 우리가 원하는 식을 정리 };
reducer 함수의 매개변수: acc(accumulator, 누산기), cur(currentValue, 현재값), idx(currentIndex, 현재 인덱스), src(array, 원본 배열)
reduce() 메서드 호출시 initialValue(초기값)를 제공하면 idx는 0부터 시작하고, 제공하지 않으면 idx는 1부터 시작합니다.
reducer가 배열의 요소들을 순서대로 2개씩 지지고 볶아서 원하는 결과값을 얻을 수 있습니다.
왜 사용하나요?
1. 배열의 모든 값 합산
2. 객체 배열에서의 값 합산
3. 중첩 배열 펼치기
📌
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
728x90
'무기 > 자바스크립트' 카테고리의 다른 글
<JavaScript> addEventListener 함수의 콜백 함수 (0) | 2021.12.03 |
---|---|
<JavaScript> 코딩테스트를 위한 핵심 문법 정리 - 문자열 (0) | 2021.11.05 |
<JavaScript> 코딩테스트를 위한 핵심 문법 정리 - 정규표현식 (0) | 2021.11.05 |
<JavaScript> 코딩테스트를 위한 핵심 문법 정리 - 배열 (0) | 2021.11.04 |
<JavaScript> 객체 생성 방식의 종류와 특징 (0) | 2021.10.27 |