假设我们有一个数字数组-
const arr = [3, 5, 7, 8, 3, 5, 7, 4, 2, 8, 4, 2, 1];
我们需要编写一个函数,该函数返回一个数组,该数组包含对应元素及其前任元素的平均值。对于第一个元素,因为没有前任,所以应该返回非常元素。
让我们为该函数编写代码,我们将使用Array.prototype.map()函数解决此问题-
const consecutiveAverage = arr => { return arr.map((el, ind, array) => { return ((el + (array[ind-1] || 0)) / (1 + !!ind)); }); }; console.log(consecutiveAverage(arr));
输出结果
控制台中的输出将为-
[ 3, 4, 6, 7.5, 5.5, 4, 6, 5.5, 3, 5, 6, 3, 1.5 ]