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