您的位置:首页 > Web前端 > JavaScript

数组求和-JS

2020-02-02 11:13 1496 查看

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

输入描述:

数组中的元素均为 Number 类型

示例1

输入

[ 1, 2, 3, 4 ]

输出

10

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

1

2

3

4

5

6

7

8

9

10

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));

    
}

}

常规循环:

1

2

3

4

5

6

7

function
sum(arr) {

    
var
s = 0;

    
for
(
var
i=arr.length-1; i>=0; i--) {

        
s += arr[i];

    
}

    
return
s;

}

函数式编程 map-reduce:

1

2

3

4

5

function
sum(arr) {

    
return
arr.reduce(
function
(prev, curr, idx, arr){

        
return
prev + curr;

    
});

}

forEach遍历:

1

2

3

4

5

6

7

8

function
sum(arr) {

    
var
s = 0;

    
arr.forEach(
function
(val, idx, arr) {

        
s += val;

    
}, 0);

 
 

    
return
s;

};

eval:

1

2

3

function
sum(arr) {

    
return
eval(arr.join(
"+"
));

};

转载于:https://www.cnblogs.com/strawqqhat/p/10602164.html

  • 点赞
  • 收藏
  • 分享
  • 文章举报
站内首发文章 diaobei2017 发布了0 篇原创文章 · 获赞 0 · 访问量 545 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: