jineecode

reduce 파헤치기 본문

JS

reduce 파헤치기

지니코딩 2021. 5. 21. 11:09

코드부터 살펴보기

const array = [3, -1, 10, 5, 0];
const sum = array.reduce((acc, cur) => {
  return acc + cur;
});

console.log(sum);

//17

 

const array = [3, -1, 10, 5, 0];
const sum = array.reduce((acc, cur) => {
  console.log(acc);
  return acc + cur;
});

3

12
17

 

const array = [3, -1, 10, 5, 0];
const sum = array.reduce((acc, cur) => {
  console.log(cur);
  return acc + cur;
});

-1
10

 

 

초기값을 이용한 응용

const array = [3, -1, 10, 5, 0];
const sum = array.reduce((acc, cur) => {
  console.log(acc);
  acc.push(cur * 2);
  return acc;
}, []);

console.log(sum);

 

[]
[ 6 ]
[ 6, -2 ]
[ 6, -2, 20 ]
[ 6, -2, 20, 10 ]
[ 6, -2, 20, 10, 0 ]

 

 

 

 

 

객체에서의 reduce

const array2 = [
  {
    name: "james",
    age: 20,
  },
  {
    name: "jimi",
    age: 30,
  },
  {
    name: "jasmin",
    age: 40,
  },
  {
    name: "mies",
    age: 26,
  },
];

const sum3 = array2.reduce((acc, value) => acc + value.age);
console.log(sum3);

 

[object Object]304026

 

이때는 초기값을 넣어주어야 한다.

 

const array2 = [
  {
    name: "james",
    age: 20,
  },
  {
    name: "jimi",
    age: 30,
  },
  {
    name: "jasmin",
    age: 40,
  },
  {
    name: "mies",
    age: 26,
  },
];

const sum3 = array2.reduce((acc, value) => acc + value.age, 0);
console.log(sum3);

116

'JS' 카테고리의 다른 글

웹 스토리지 (localStorage, sessionStorage) 사용법  (0) 2021.06.21
webpack 뜯어보기  (0) 2021.05.28
&& 연산자로 if 역할 대신하기  (0) 2021.05.12
Javascript 정렬 함수  (0) 2021.04.29
async / await  (0) 2021.04.27
Comments