Coding/JavaScript

[JavaScript] reduce 메서드

sally-dot 2023. 2. 11. 23:56


Array.reduce()

reduce 메서드는 배열의 각 요소에 대해 주어진 reducer 함수를 실행하고, 하나의 결과값을 반환

 

구문

arr.reduce(callback[, initialValue])
  • 인수로 함수를 받음
  • (누적 계산값, 현재값) => {return 계산값}

 

배열의 합 구하기

let arr = [1,2,3,4,5];

const result = arr.reduce((prev, cur)=>{
  return prev + cur;
}, 0)

// 풀이
// prev 0, cur 1 => prev 1 (prev가 처음에 0 , 초기값이 0, cur 현재값 1 더함)
// prev 1, cur 2 => prev 3 
// prev 3, cur 3 => prev 6
// prev 6, cur 4 => prev 10
// prev 10, cur 5 => prev 15
 
console.log(result);  // 15
  • prev : 누적값 (현재까지 계산된 값)
  • cur : 현재값
  • 0 : 초기값 (안줘도 되지만, 안주면 배열의 첫번째 값이 들어감)

 

배열의 평균 구하기

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

function solution(arr) {

const result = arr.reduce((prev, cur)=>{
  return (prev + cur);
}, 0);
const average = result / arr.length;
  return average;
console.log(average);
}

console.log(solution(arr))  // 5.5

 

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

[JavaScript] 함수와 메서드 차이 ?!  (0) 2023.02.27