JavaScript

超轻量级php框架startmvc

JS数组求和的常用方法总结【5种方法】

更新时间:2020-08-11 18:36:01 作者:startmvc
本文实例总结了JS数组求和的常用方法。分享给大家供大家参考,具体如下:题目描述计算

本文实例总结了JS数组求和的常用方法。分享给大家供大家参考,具体如下:

题目描述

计算给定数组 arr 中所有元素的总和

输入描述:

数组中的元素均为 Number 类型

输入例子:


sum([ 1, 2, 3, 4 ])

输出例子:

10

方法1. 不考虑算法复杂度,用递归做:


function sum(arr) {
 var len = arr.length;
 if(len == 0){
 return 0;
 } else if (len == 1){
 return arr[0];
 } else {
 return arr[0] + sum(arr.slice(1));
 }
}

方法2. 常规循环:


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

方法3. 函数式编程 map-reduce:


function sum(arr) {
 return arr.reduce(function(prev, curr, idx, arr){
 return prev + curr;
 });
}

方法4. forEach遍历:


function sum(arr) {
 var s = 0;
 arr.forEach(function(val, idx, arr) {
 s += val;
 }, 0);
 
 return s;
};

方法5. eval:


function sum(arr) {
 return eval(arr.join("+"));
};


//测试输出运行结果:
console.log(sum([ 1, 2, 3, 4 ]))

使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码,可得如下运行结果:

感兴趣的朋友可以动手测试一下上述代码。

JS 数组求和