JS数组方法reduce的用法实例分析


Posted in Javascript onMarch 03, 2020

本文实例讲述了JS数组方法reduce的用法。分享给大家供大家参考,具体如下:

数组方法 reduce 用来迭代一个数组,并且把它累积到一个值中。

使用 reduce 方法时,你要传入一个回调函数,这个回调函数的参数是一个 累加器 (比如例子中的 previousVal) 和当前值 (currentVal)。

reduce 方法有一个可选的第二参数,它可以被用来设置累加器的初始值。如果没有在这定义初始值,那么初始值将变成数组中的第一项,而 currentVal 将从数组的第二项开始。

使用 reduce 方法来让 array 中的所有值相加

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>reduce的使用</title>
</head>
<body>
<script>
var arr = [1, 2, 3, 4, 5];
sum = arr.reduce(function(prev, cur, index, arr) {
   //输出的是第一项的值或上一次叠加的结果,正在被处理的元素,正在被处理的元素的索引值
   console.log(prev, cur, index); 
   return prev + cur;
})
console.log(arr, sum); //输入数组本身和最后的结果
</script>
</body>
</html>

控制台输出:

JS数组方法reduce的用法实例分析 

var numbers = [15.5, 2.3, 1.1, 4.7];
 
function getSum(total, num) {
  return total + Math.round(num);
}
function myFunction(item) {
  console.log(numbers.reduce(getSum, 0));//0 传递给函数的初始值
}
myFunction()//输出24

JS数组方法reduce的用法实例分析

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
xmlHTTP实例
Oct 24 Javascript
JavaScript 读取元素的CSS信息的代码
Feb 07 Javascript
ASP.NET jQuery 实例17 通过使用jQuery validation插件校验ListBox
Feb 03 Javascript
JQuery记住用户名和密码的具体实现
Apr 04 Javascript
jQuery.lazyload+masonry改良图片瀑布流代码
Jun 20 Javascript
js对象的复制继承实例
Jan 10 Javascript
Bootstrap轮播图的使用和理解4
Dec 14 Javascript
vue + socket.io实现一个简易聊天室示例代码
Mar 06 Javascript
微信小程序封装的HTTP请求示例【附升级版】
May 11 Javascript
微信小程序自定义组件components(代码详解)
Oct 21 Javascript
小程序中手机号识别的示例
Dec 14 Javascript
Vue过滤器(filter)实现及应用场景详解
Jun 15 Vue.js
Javascript模拟实现new原理解析
Mar 03 #Javascript
JS面向对象编程——ES6 中class的继承用法详解
Mar 03 #Javascript
JS面向对象编程实现的拖拽功能案例详解
Mar 03 #Javascript
序列化模块json代码实例详解
Mar 03 #Javascript
JS常用排序方法实例代码解析
Mar 03 #Javascript
JS面向对象编程实现的Tab选项卡案例详解
Mar 03 #Javascript
JS面向对象编程基础篇(三) 继承操作实例详解
Mar 03 #Javascript
You might like
PHP 学习路线与时间表
2010/02/21 PHP
php中addslashes函数与sql防注入
2014/11/17 PHP
php实现的debug log日志操作类实例
2016/07/12 PHP
图片自动缩小 点击放大
2008/07/07 Javascript
JS自动适应的图片弹窗实例
2013/06/29 Javascript
jquery实现保存已选用户
2014/07/21 Javascript
JS实现屏蔽shift,Ctrl,alt等功能键的方法
2015/06/01 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
AngularJs ng-repeat 嵌套如何获取外层$index
2016/09/21 Javascript
基于Vue 服务端Cookies删除的问题
2018/09/21 Javascript
微信小程序自定义tabBar组件开发详解
2020/09/24 Javascript
vue拖拽排序插件vuedraggable使用方法详解
2020/08/21 Javascript
vue-cli3 项目优化之通过 node 自动生成组件模板 generate View、Component
2019/04/30 Javascript
回顾Javascript React基础
2019/06/15 Javascript
详解vue中$nextTick和$forceUpdate的用法
2019/12/11 Javascript
JavaScript单线程和任务队列原理解析
2020/02/04 Javascript
Python中字典映射类型的学习教程
2015/08/20 Python
python杀死一个线程的方法
2015/09/06 Python
Python中的descriptor描述器简明使用指南
2016/06/02 Python
Python爬虫实现网页信息抓取功能示例【URL与正则模块】
2017/05/18 Python
python opencv实现任意角度的透视变换实例代码
2018/01/12 Python
解决Python中list里的中文输出到html模板里的问题
2018/12/17 Python
python url 参数修改方法
2018/12/26 Python
linux安装python修改默认python版本方法
2019/03/31 Python
Pandas中DataFrame的分组/分割/合并的实现
2019/07/16 Python
Pandas 解决dataframe的一列进行向下顺移问题
2019/12/27 Python
python实现电子词典
2020/03/03 Python
传统HTML页面实现模块化加载的方法
2018/10/15 HTML / CSS
缅甸网上购物:Shop.com.mm
2017/12/05 全球购物
北京SQL新华信咨询
2016/09/30 面试题
家长给孩子的表扬信
2014/01/17 职场文书
民政局办理协议离婚(范本)
2014/10/25 职场文书
2015年社区平安建设工作总结
2015/05/13 职场文书
2015年审计人员工作总结
2015/05/26 职场文书
关于公司年会的开幕词
2016/03/04 职场文书
kubernetes集群搭建Zabbix监控平台的详细过程
2022/07/07 Servers