일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Flutter
- HTML
- Mongoose
- CSS
- DART
- API
- TypeScript
- ES6
- pug
- CLONE
- express
- NextJs
- nodejs
- 자바스크립트
- GRID
- ECMAScript
- graphQL
- Session
- MongoDB
- javscript
- JavaScript
- clonecoding
- react
- backend
- 리액트
- heroku
- form
- Component
- frontend
- node.js
- Today
- Total
Enjoy Programming
Array.prototype.reduce() && 본문
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
Array.prototype.reduce() - JavaScript | MDN
reduce() 메서드는 배열의 각 요소에 대해 주어진 리듀서(reducer) 함수를 실행하고, 하나의 결과값을 반환합니다.
developer.mozilla.org
금일 챌린지 중에서 배열의 원소들을 모두 합하는걸 써야 했는데
음 이전 파이썬 c언어 할때는 주로 for문 돌려서 연산을 했다~
음 찾아보니 자바스크립트에는 reduce라는 좋은 메소드가 있었다. 배열의 각 요소에 대해 주어진 reducer함수를 실행하고
하나의 결과값을 반환한다.
리듀서는 네개의 인자를 가진다.
1. accumulator - 누산기 : 콜백의 반환값을 누적한다. 콜백의 첫 번째 호출이면서 initialValue를 제공한 경우 초기 벨류의 값
2. currentValue - 현재 값 : 처리할 현재 요소
3. currentIndex - 현재 인덱스 : 처리할 현재 요소의 인덱스 초기벨류를 제공하면 0, 아니면 1부터 시작
4. src - 원본 배열 - reduce()를 호출 한 배열
리듀서 함수의 반환 값은 누산기에 할당되고, 누산기는 literal중 유지되므로 결국 최종 결과는 하나의 값이 된다.
단순히 더하기를 하는 파이썬이나 c의 sum함수가 아니다.
음 calculator라고 생각하면되려나?
첫번째 인자인 accum에 계속 연산값을 누적시키면서 최종적으로 누적된 accum을 반환하는 것으로 보면 되겠다.
주의할 점은 initialValue의 지정 여부이니~ 꼭 확인하고 지정 or 미지정 해주자
'JavaScript > Vanilla Js' 카테고리의 다른 글
MediaRecorder (0) | 2021.06.23 |
---|---|
MediaDevices.getUserMedia() (0) | 2021.06.23 |
class static method & freeze() & values() & keys() (0) | 2021.06.14 |
[ES6] Promises (0) | 2021.06.12 |
[ES6] For ...of (0) | 2021.06.11 |