Notice
Recent Posts
Recent Comments
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

Día de Ruru

20230509 TIL 본문

항해99/TIL

20230509 TIL

공대루루 2023. 5. 10. 05:43

다시 시작한 코딩 테스트... 오랜만에 다시 하려니까 잊어버린게 많다.

코딩 테스트 풀이

정수 배열 numbers 가 매개변수로 주어집니다. numbers의 원소의 평균값을 return하도록 solution 함수를 완성해주세요.

입력 예
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
출력 예 
5.5

문제 점

배열안에 있는 모든 값을 하나씩 더하고 개수로 나눠야 하는데 배열안에 있는 모든 값을 더하려고 for 구문을 쓰자니 너무 코드가 길어지는 기분이다. 누적되는 값을 reduce()로 구하는 방법이 있었던것 같은데 reduce() 쓰는 방법을 잊어버림..

해결 방안

아래 코드는 배열안의 값들을 더하는 코드이다. 이 코드를 이용하면 배열의 요소 평균값을 구할 수 있다.

const arr = [1, 2, 3];

const result = arr.reduce(function add(sum, currValue) {
  return sum + currValue;
}, 0);

알게된 점

reduce() : 누적 계산의 결과 값을 반환한다.

- reduce는 누산기, 현재 값, 현재 인덱스, 원본 배열 4가지의 인자를 가질 수 있다. 배열의 각 요소에 대해 함수를 실행하고 누적된 값을 출력해야 할 때 사용할 수 있다.

const arr = [1, 2, 3, 4, 5];
const result = arr.reduce((acc, cur, idx) => { return acc += cur; }, 0);
console.log(result);  // 15

'항해99 > TIL' 카테고리의 다른 글

20230523 TIL  (0) 2023.05.24
20230518 TIL  (0) 2023.05.18
20230502 TIL  (0) 2023.05.03
20230419 TIL  (0) 2023.04.20
20230418 TIL  (1) 2023.04.19
Comments