반응형
reduce() 메서드는 배열의 각 요소에 대해 주어진 리듀서(reducer) 함수를 실행하고, 하나의 결과값을 반환합니다.
const numbers = [1, 2, 3, 4, 5];
//---------------------forEach
// let sum = 0;
// numbers.forEach(n =>{
// sum += n;
// });
// console.log(sum); // 15
//---------------------reduce 더하기
const sum = numbers.reduce((accumulator, current) => accumulator + current, 0);
console.log(sum); //15
// --------------------reduce 평균
const avg = numbers.reduce((accumulator, current, index, array) => {
if (index == array.length - 1) {
return (accumulator + current) / array.length;
}
return accumulator + current;
}, 0);
console.log(avg);
// 알파벳 중복수
const alphabets = ["a", "d", "a", "b", "c", "d", "d", "e"];
const count = alphabets.reduce((acc, cur) => {
if (acc[cur]) {
acc[cur] += 1;
} else {
acc[cur] = 1;
}
return acc;
}, {});
console.log(count);
반응형
'2020 > Vanilla JavaScript' 카테고리의 다른 글
Javascript #prototype (0) | 2020.03.28 |
---|---|
JavaScript #ES6 Class (0) | 2020.03.28 |
JavaScript #내장함수 (shift, pop, unshift, push, concat, join) (0) | 2020.03.28 |
JavaScript splice vs slice (0) | 2020.03.28 |
JavaScript #filter내장함수 (0) | 2020.03.28 |