给定一个数组[1,2,3,4],如何求其元素的和?(在这种情况下,总数为10。)
我认为每个美元可能有用,但我不确定如何实现它。
给定一个数组[1,2,3,4],如何求其元素的和?(在这种情况下,总数为10。)
我认为每个美元可能有用,但我不确定如何实现它。
当前回答
getTotal = (arr) => {
let total = 0
for (let i = 0; i < arr.length; i++) {
total += arr[i];
}
return total
}
getTotal([1, 2, 3, 4]) // 10
getTotal([1, 2, 3, 4, 5]) // 15
其他回答
使用贴图:
var sum = 0;
arr.map(function(item){
sum += item;
});
// sum now contains the total.
您可以将该方法添加到Array原型中。
Array.prototype.sum = function(){
var sum = 0;
this.map(function(item){
sum += item;
});
return sum;
}
然后您可以在任何阵列上使用它,如下所示:
arr.sum();
使用reduce
设arr=[1,2,3,4];设和=arr.reduce((v,i)=>(v+i));console.log(总和);
我知道这是一个老帖子。但我只是想分享我对这个问题的看法。
let myArr = [1, 3, 4, 5, 6, 7, 8];
let counter = 0;
for(let i = 0; i < myArr.length; i++){
counter = counter + myArr[i];
console.log(counter);}
当数组由字符串组成时,必须更改代码。如果数组是数据库请求的结果,则可能是这种情况。此代码有效:
alert(
["1", "2", "3", "4"].reduce((a, b) => Number(a) + Number(b), 0)
);
这里,[“1”,“2”,“3”,“4”]是字符串数组,函数Number()将字符串转换为数字。
试试这个。。。
function arrSum(arr){
total = 0;
arr.forEach(function(key){
total = total + key;
});
return total;
}