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 ]
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP