十种方法解决--- 1-100累加和
程序员文章站
2022-06-09 18:39:33
...
这是我去面试碰到的一道题,求 var num = [1,2,3,...,100] 的和,当初没细想,回过头来总结一下,综合网上的案例,有由如下10种方法:
1、for
var sum1 = 0;
for (var i = 0; i < num.length; i++) {
sum1 += num[i];
}
console.log(sum1); //5050
2、for…in
var sum2 = 0;
for(var i in num){
sum2 += num[i]
}
console.log(sum2);
3、while
var sum3 = 0,i = 1;
while(i<=100){
sum3 += i;
i++;
}
console.log(sum3);
4、do…while
var sum4 = 0,i = 1;
do{
sum4 += i;
i++;
}
while(i<=100);
console.log(sum4);
5、递归
function sum5(i){
if( i === 1 ){
return 1
}
return sum5(i-1)+i;
}
console.log(sum5(100));
6、eval
var sum6 = eval(num.join("+"));
console.log(sum6);
7、reduce
var sum7 = num.reduce((t,i)=>t+=i,0);
console.log(sum7);
8、map
var sum8 = 0;
num.map((i)=>sum8+=i);
console.log(sum8);
9、forEach
var sum9 = 0;
num.forEach((i)=>sum9+=i);
console.log(sum9);
10、filter
var sum10= 0;
num.filter((i)=>sum10+=i);
console.log(sum10);
上一篇: web前端面试题js部分
下一篇: 5GC-1.核心网的构架和一些基础概念
推荐阅读
-
基于将Android工程做成jar包和资源文件的解决方法
-
jQuery调用AJAX时Get和post公用的乱码解决方法实例说明
-
setInterval和setTimeout的区别以及setInterval越来越快问题的解决方法
-
Android之ScrollView嵌套ListView和GridView冲突的解决方法
-
Android ListView的item背景色设置和item点击无响应的解决方法
-
ThinkPHP的cookie和session冲突造成Cookie不能使用的解决方法
-
nginx调用php-fpm出错解决方法和nginx配置详解
-
Nginx启动、重启失败的一般解决方法和步骤
-
在python3中pyqt5和mayavi不兼容问题的解决方法
-
Oracle中插入特殊字符:&和'的解决方法汇总