Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- map()
- visibility : hidden
- 일반 형제 선택자 결합
- disabled
- 객체
- invalid assignment left-hand side
- Em
- 배열의 내림차순
- filter()
- 고차함수
- classList.contains(string)
- 배열과 연결리스트의 차이
- 범용 선택자
- 인접 형제 선택자 결합
- Array.from()
- 등차수열의 항 찾기
- 쌍방향 연결리스트
- Sort
- 가상 요소 선택자
- Link
- 단방향 연결리스트
- indexOf
- 배열의 오름차순
- 양방향 연결리스트
- innerhtml
- nth-child()
- CSS
- for..of
- display : none
- 백준알고리즘
Archives
- Today
- Total
프론트엔드 센트럴파크 (☞゚ヮ゚)☞
고차함수 - reduce() 본문
요소 별 함수 수행 누적 결과값 반환 : Array.reduce(function(accumulator, item, index, array){})
accumulator : 이전 함수 결과가 누적(initial로 초기값 설정 가능)
item : 배열요소
index : 배열 위치
array : 배열
let nums = [1, 2, 3, 4, 5];
let call_count = 0;
console.log("result\tvalue\tindex");
let sum = nums.reduce(function(accumulator, item, index, array) {
console.log(accumulator, "\t\t", item, "\t\t", index);
call_count++;
return accumulator + item;
});
console.log(call_count);
console.log(sum);
array는 그대로 넘어온다. (한개 밖에 없기 때문)
result가 1인 이유는 초기값을 설정하지 않으면 accumulator는 0번째의 값이 들어온다.
그렇기 때문에 result값이 1이 되었다.
초기값을 설정한 경우
let nums = [1, 2, 3, 4, 5];
let call_count = 0;
console.log("result\tvalue\tindex");
let sum = nums.reduce(function(accumulator, item, index, array) {
console.log(accumulator, "\t\t", item, "\t\t", index);
call_count++;
return accumulator + item;
},0);
console.log(call_count);
console.log(sum);
'Javascript' 카테고리의 다른 글
Number.isNan() - NaN을 판별할 때 (0) | 2022.05.28 |
---|---|
생성자 함수 (0) | 2022.05.27 |
고차함수 - filter() (0) | 2022.05.26 |
콜백함수의 조건을 만족하는 하나의 값만 반환 - find() (0) | 2022.05.26 |
고차함수 - map() (0) | 2022.05.26 |
Comments