Попробуйте следующее
var elmt = [0,1,2,3,4,7,8,9,10,11];
//Using reduce()
function totalReduce(arr) {
if(!Array.isArray(arr)) return;
return arr.reduce((a, v)=>a + v);
}
//Using for loop
function totalForLoop(arr) {
if(!Array.isArray(arr)) return;
let totalNumber = 0;
for (let i=0,l=arr.length; i<l; i++) {
totalNumber+=arr[i];
}
return totalNumber;
}
// Using while loop
function totalWhile(arr) {
if(!Array.isArray(arr)) return;
let totalNumber = 0, i=-1;
while (++i < arr.length) {
totalNumber+=arr[i];
}
return totalNumber;
}
// Using array forEach
function totalForEach(arr) {
if(!Array.isArray(arr)) return;
let sum=0;
arr.forEach(each => {
sum+=each;
});
return sum;
};
var sum = totalReduce(elmt);
console.log( "Sum Using reduce: " + sum + " Average: " + sum/elmt.length );
sum = totalForLoop(elmt);
console.log( "Sum Using totalForLoop: " + sum + " Average: " + sum/elmt.length );
sum = totalWhile(elmt);
console.log( "Sum Using totalWhile: " + sum + " Average: " + sum/elmt.length );
sum = totalForEach(elmt);
console.log( "Sum Using totalForEach: " + sum + " Average: " + sum/elmt.length );
Метод reduce () выполняет функцию редуктора (которую вы предоставляете) для каждого члена массива, в результате чего получается единственное выходное значение.