구문
arr.reduce(callback[, initialValue])
배열.reduce((누적값, 현잿값, 인덱스, 요소) => { return 결과 }, 초깃값);
매개변수
- callback - 배열의 각 요소에 대해 실행할 함수
- 4가지의 인수를 가진다.
- accumulator(acc) - callback함수의 반환 값을 누적
- currentValue(cur) - 배열의 현재 요소
- index(Optional) - 배열의 현재 요소의 인덱스
- array(Optional) - 호출한 배열
- callback함수의 반환 값은 accumulator에 할당되고 순회중 계속 누적되어 최종적으로 하나의 값을 반환한다.
- 4가지의 인수를 가진다.
- initialValue(Optional)
- 최초 callback함수 실행 시 accumulator 인수에 제공되는 값, 초기값을 제공하지 않을 경우 배열의 첫 번째 요소를 사용하고, 빈 배열에서 초기값이 없을 경우 에러가 발생한다.
예제
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const sum = numbers.reduce((accumulator, currentNumber) => accumulator + currentNumber);
console.log(sum); // 결과: 55
쉽게 말해 (reduce ((최종 값(=누적 값), 현재 더해질 수)))이다.
reduce 연습 문제 모음
https://codesign.tistory.com/174
[ 프로그래머스 / JavaScript ] 자릿수 더하기
https://school.programmers.co.kr/learn/courses/30/lessons/12931 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는
codesign.tistory.com
https://codesign.tistory.com/175
[ 프로그래머스 / JavaScript ] 평균 구하기
https://school.programmers.co.kr/learn/courses/30/lessons/12944 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는
codesign.tistory.com
https://codesign.tistory.com/161
[ 프로그래머스 / JavaScript ] 음양 더하기
https://school.programmers.co.kr/learn/courses/30/lessons/76501 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는
codesign.tistory.com
https://codesign.tistory.com/162
[ 프로그래머스 / JavaScript ] 내적
https://school.programmers.co.kr/learn/courses/30/lessons/70128 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는
codesign.tistory.com
https://codesign.tistory.com/160
[ 프로그래머스 / JavaScript ] [ 월간 코드 챌린지 시즌3 ] 없는 숫자 더하기
https://school.programmers.co.kr/learn/courses/30/lessons/86051 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는
codesign.tistory.com
https://codesign.tistory.com/282
[ 프로그래머스 / JavaScript ] 예산
https://school.programmers.co.kr/learn/courses/30/lessons/12982 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는
codesign.tistory.com
참고
Array.prototype.reduce() - JavaScript | MDN
reduce()** **메서드는 배열의 각 요소에 대해 주어진 **리듀서**(reducer) 함수를 실행하고, 하나의 결과값을 반환합니다.
developer.mozilla.org
'프론트엔드 > JavaScript' 카테고리의 다른 글
| [ 자바스크립트 ] <script> 태그는 어디에 위치하는게 효율적일까? (0) | 2022.09.30 |
|---|---|
| [ 자바스크립트 ] Filter() 함수: 배열에서 조건을 만족하는 요소를 추출하는 방법 (0) | 2022.09.15 |
| [자바스크립트] sort, 배열 정렬하기 (오름차순, 내림차순, 문자열, 객체) (0) | 2022.08.27 |
| [자바스크립트] slice (0) | 2022.06.01 |
| [자바스크립트] map, includes, toString, join의 사용 예제 (0) | 2022.05.12 |
댓글