const array = [1,2,3,4,5]
const arrayReduce = array.reduce(function(){}, initialValue)
reduce매서드
첫번째 인자: 콜백함수(Arrow function도 가능)
두번째 인자: 처음값
const array = [1,2,3,4,5]
const arrayReduce = array.reduce((accumulator, currentValue) => {}, initialValue)
함수에 들어오는 인자
첫번째 인자(accumulator): 콜백함수의 반환값(return) 누적
// 첫번째로 들어오는 값은 initialValue가 들어옵니다.
// initialValue가 없다면 배열의 첫번째 요소가 들어갑니다.
두번째 인자(currentValue): 처리 할 현재값
// initialValue가 있다면 배열의 첫번째 요소부터 들어갑니다.
// initialValue가 없다면 배열의 두번째 요소부터 들어갑니다.
const array = [1,2,3,4,5]
const arrayReduce = array.reduce((accumulator, currentValue) => {
return accumulator + currentValue
}, 0)
console.log(arrayReduce) // 15
initialValue = 0
첫번째 사이클
(0,1) => return 0 + 1
두번째 사이클
(반환값 0+1이 첫번째 인자로 들어갑니다.)
(1,2) => return 1+2
세번째 사이클
(반환값 1+2가 첫번째 인자로 들어갑니다.)
(3,3) => return 3+3
네번째 사이클
(6,4) => return 6+4
다섯번째 사이클
(10,5) => return 15
console.log(arrayReduce)를 하면 15라는 값이 나온다.
'JScript > Today I learned' 카테고리의 다른 글
함수형 프로그래밍이란? (0) | 2021.12.05 |
---|---|
formData의 값을 console.log로 볼 수 없는 원인 (0) | 2021.07.25 |
TIL#10 Scope !중요 (0) | 2021.06.14 |
TIL#09 UI vs API (0) | 2021.05.09 |
TIL#08 라이브러리와 프레임워크 (0) | 2021.05.09 |