-1

如果之前有人问过这个问题,我真的很抱歉,但在过去的 4 个小时里我一直在自己搜索/尝试,但一无所获。

我试图弄清楚如何在 Javascript 中创建一个函数,它将返回数组中包含的所有数字的总和(即 [12、50、3] 将返回 65。我需要能够计算任何大小的数组的总和。

我知道我在这方面完全是个菜鸟,但这是我到目前为止所拥有的:

var findSum = function() {    
}
var n = [10, 12];
findSum(a);

无法解释我对任何帮助的感激之情。

PS如果你正在浏览这个,你好,教授;)

4

3 回答 3

3

这是直接从文档中减少的标准示例:https ://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/Reduce

[0,1,2,3,4].reduce(function(previousValue, currentValue, index, array){
    return previousValue + currentValue;
});

因此

findSum(a) { return a.reduce(function(a, b) { return a+b; }); }
于 2013-04-04T07:35:24.177 回答
0

试试这个

var array = [1,3,4,5,2,10];
var sumOfArray = 0;
array.forEach(function(value,index){
     sumOfArray += value;
 });
console.log(sumOfArray); //25

小提琴演示

于 2013-04-04T07:42:54.617 回答
0

最简单形式的本机 Javascript 实现,没有兼容性问题:

function findSum(arr){
   var sum=0;
   for(var i = arr.length;i--;){
      sum += arr[i];
   }
   return sum;
}

// or
function findSum(arr){
   var sum=0,i=arr.length;
   while(i--){sum += arr[i];}
   return sum;
}

findSum(a);
于 2013-04-04T07:45:23.843 回答