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("+"));
};
JS中常用的函数求和方法总结【五种方法】相关推荐
- js中截取字符串前几位的两种方法slice()substring()
在Javascript使用字符串中,我们不一定需要全部的字符串,这时就需要截取字符串.本文主要介绍js中截取字符串前几位的两种方法:1.使用slice() 方法:2.使用substring() 方法. ...
- linux服务器清除cdn,Linux服务器中查找并删除大文件的五种方法,Linux系统清除文件内容的命令分享...
很多时候,在处理Linux终端中的文件时,您可能希望清除文件的内容,而无需使用任何Linux命令行编辑器打开它.怎么能实现这一目标?在本文中,我们将借助一些有用的命令,通过几种不同的方式清空文件内容. ...
- Java中判断字符串是否为数字的五种方法
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 推荐使用第二个方法,速度最快. 方法一:用JAVA自带的函数 Java代码 public sta ...
- 【js】js获取数组最后一位元素的五种方法
一. 利用length let arr=[1,2,3]; arr[arr.length-1] //3 二. 数组pop方法 , 删除数组的最后一位 并返回 会修改原数组 let arr=[1,2,3] ...
- Windows:win10中查看自己的电脑版本号的五种方法
原文:http://baijiahao.baidu.com/s?id=1599865729643161638&wfr=spider&for=pc 大家好!今天给大家分享下如何查看自己的 ...
- ftp上传当天文件的方法_五种方法将文件上传到FTP服务器
您知道电脑硬盘是如何读取和存储数据的吗?恢复软件是如何找回数据的吗?通过这个视频教程,你将了解你丢失的数据是否还在,这些文件能否找回. 请点击 - >>>> 观看视频 如何安全 ...
- 漫谈分子动力学计算热导率的五种方法
关注 Mr.material,\color{Violet} \rm Mr.material\ ,Mr.material , 更\color{red}{更}更多\color{blue}{多}多精\col ...
- 监测Squid日志的五种方法
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 原贴:h ...
- js中常用的数组和字符串方法
一:js中常用的数组方法 <script>//函数声明式中的方法const arr=[1,3,6,9,15,19,16];//函数的所有方法 map(),reduce(),filter() ...
最新文章
- 设计模式学习笔记清单
- office在线编辑器
- sharepoint2010 创建自定义列表
- 最佳拟合直线_JAVA
- jquery表单数据反序列化为字典
- linux-basic(11)认识和学习bash
- p2psearcher2013其中
- 监督学习 | 集成学习 之Bagging、随机森林及Sklearn实现
- 计算机组成原理二进制地址码,计算机组成原理第四章第三讲.ppt
- python爬取网页版QQ空间,生成词云图、柱状图、折线图(附源码)
- php对键盘控制,键盘控制 - 陈映亮的个人空间 - OSCHINA - 中文开源技术交流社区...
- 进击的AssetBundles和它的工具们
- 算法基础部分1-递归
- 替代CH7511B DP转LVDS屏换接设计|替代CH7511B EDP转LVDS转接板电路|CS5211电路原理图
- ai作文批改_网易有道词典再推AI作文批改新功能
- 360极速浏览器调用selenium
- 在2147483647的边缘疯狂试探
- C++字符串转为大写/小写
- 大数据学习之Flink环境搭建+提交任务方式
- python jupyter输出结果_Jupyter noteb中Python子进程的实时stdout输出
热门文章
- 当db_cache_advice初始化参数设为on, 大大降低了cpu的使用
- 持NPDP证书在深圳可享受子女入学、医疗保健、安居保障等福利
- AWS为什么能成功?
- 统计APP下载量--发现安卓下载大文件使用多线程下载方式
- 分析百度手机助手协议(实现app下载量上涨)
- 微信小程序(三)常见组件
- vue 安装(看图就够了,皮卡皮卡)
- USB fastboot
- iOS Xcode提交IPA时收到苹果邮件ITMS-90338: Non-public API usage
- 海尔简爱s11怎么进入bios_海尔简爱s11系统应用商店没有登录界面怎么办?