Frontend/JavaScript

Reduce 함수에 대해 알아보기!

섕걍 2022. 3. 17. 22:57

알고리즘을 풀다가 대충 안 reduce때문에 런타임 에러가 떴다

const array = [1,2,3,4];

const initValue = 0;

const sum = arrray.reduce((previousValue,currentValue)=>previousValue+currentValue),initValue);

console.log(sum);
// 10

 

[1,2,3].reduce((acc,cur)=>acc+cur);
// 6으로 잘 작동함

[1,2,3].reduce((acc,cur)=>acc+cur);
// 1

[1].reduce((acc,cur)=>0);
// 1 

[].reduce((acc,cur)=>acc+cur);
// 빈배열일경우 empty array라는 에러가 뜸.

[].reduce((acc,cur)=>acc+cur,0);
// 초기값 0을 준다면 빈 배열과 상관없이 0이 나온다.

[1].reduce((acc,cur)=>acc+cur,0);
//1

 

배열이 비어있을때 경우를 생각하지 못해서 에러를 뱉은것이었다!

따라서 초기값0을 준다면 배열과 상관없이 0을 리턴시켜주므로

런타임에러가 생기지 않는것이었다!

재밌당 크크

'Frontend > JavaScript' 카테고리의 다른 글

padStart();  (2) 2022.04.05
String.prototype.repeat()  (0) 2022.04.05
Math.abs()  (0) 2022.03.29
.localeCompare() | .sort()  (0) 2022.03.29
Array. from()  (0) 2022.03.12