정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요.
arr | return |
---|---|
[1,2,3,4] | 2.5 |
[5,5] | 5 |
function solution(arr) {
const answer = arr.reduce((a,b)=>{
return a+b
})/arr.length
return answer;
}
자바스크립트의 reduce함수는 배열의 각 요소를 순회하며 callback함수의 실행 값을 누적하여 하나의 결과값을 반환 합니다.
1.callback function
다음 4가지의 인수를 가집니다.
accumulator - accumulator는 callback함수의 반환값을 누적합니다.
currentValue - 배열의 현재 요소
index(Optional) - 배열의 현재 요소의 인덱스
array(Optional) - 호출한 배열
callback함수의 반환 값은 accumulator에 할당되고 순회중 계속 누적되어 최종적으로 하나의 값을 반환합니다.
예제
1. 배열의 모든 값 (1부터 10까지) 더하기
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const sum1 = numbers.reduce((accumulator, currentNumber) => accumulator + currentNumber);
console.log('sum1 =', sum1);
복습까지 하는 남자... 갓벽!!