Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 숫자 배열의 실시간 이동 평균

<시간/>

문제

배열을 받는 JavaScript 함수를 작성해야 합니다. 우리 함수는 입력 배열 요소의 이동 평균을 저장하는 새 배열을 생성해야 합니다. 예를 들어 -

[1, 2, 3, 4, 5] → [1, 1.5, 3, 5, 7.5]

첫 번째 요소는 첫 번째 요소의 평균이고, 두 번째 요소는 처음 2개 요소의 평균이고, 세 번째 요소는 처음 3개 요소의 평균입니다.

예시

다음은 코드입니다 -

const arr = [1, 2, 3, 4, 5];
const movingAverage = (arr = []) => {
   const res = [];
   let sum = 0;
   let count = 0;
   for(let i = 0; i < arr.length; i++){
      const el = arr[i];
      sum += el;
      count++;
      const curr = sum / count;
      res[i] = curr;
   };
   return res;
};
console.log(movingAverage(arr));

출력

다음은 콘솔 출력입니다 -

[ 1, 1.5, 2, 2.5, 3 ]