OK, imagina que tienes esta matriz a continuación:
const arr = [1, 2, 3, 4];
Comencemos a buscar muchas maneras diferentes de hacerlo, ya que no pude encontrar ninguna respuesta completa aquí:
1) Uso de reduce incorporado ()
function total(arr) {
if(!Array.isArray(arr)) return;
return arr.reduce((a, v)=>a + v);
}
2) Utilizando for loop
function total(arr) {
if(!Array.isArray(arr)) return;
let totalNumber = 0;
for (let i=0,l=arr.length; i<l; i++) {
totalNumber+=arr[i];
}
return totalNumber;
}
3) Usando el bucle while
function total(arr) {
if(!Array.isArray(arr)) return;
let totalNumber = 0, i=-1;
while (++i < arr.length) {
totalNumber+=arr[i];
}
return totalNumber;
}
4) Usar una matriz para cada
function total(arr) {
if(!Array.isArray(arr)) return;
let sum=0;
arr.forEach(each => {
sum+=each;
});
return sum;
};
y llámalo así:
total(arr); //return 10
No se recomienda crear un prototipo de este tipo para Array ...