JavaScript reduce() 方法

时间: 2020-04-26阅读: 48标签: 方法

定义

reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

reduce() 对于空数组是不会执行回调函数的。


语法

[2,5,8,6].reduce(function(prev,next,item,arr){
...
},init);

prev 表示上一次调用回调时的返回值,或者初始值 init;

next 表示当前正在处理的数组元素;

index 表示当前正在处理的数组元素的索引,若提供 init 值,则索引为0,否则索引为1;

init 表示初始值;


示例

数组求和

[1,2,3,4,5].reduce(function(prev,next){
        return prev+next;
    })//返回值15

求数组项的最大值

var arr = [3,9,4,3,6,0,9];
var max = arr.reduce(function (prev, next) {
    return Math.max(prev,next);
});

由于未传入初始值,所以开始时prev的值为数组第一项3,next的值为数组第二项9,取两值最大值后继续进入下一轮回调。

数组去重

var newArr = arr.reduce(function (prev, next) {
    prev.indexOf(next) === -1 && prev.push(next);
    return prev;
},[]);

初始化一个空数组

将需要去重处理的数组中的第1项在初始化数组中查找,如果找不到,就将该项添加到初始化数组中

将需要去重处理的数组中的第2项在初始化数组中查找,如果找不到,就将该项继续添加到初始化数组中

将需要去重处理的数组中的第n项在初始化数组中查找,如果找不到,就将该项继续添加到初始化数组中

将这个初始化数组返回


总结

reduce()会对遍历数组的每一项,可将前面数组项遍历产生的结果与当前遍历项进行运算。

站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/9341

JavaScript中Array.find()方法如何使用?

find()方法返回通过测试(函数内判断)的数组的第一个元素的值。当数组中的元素在测试条件时返回 true 时, find()返回符合条件的元素,之后的值不会再调用执行函数。如果没有符合条件的元素返回undefined。

Number 常用方法汇总

toExponential()把对象的值转换为指数计数法。toFixed()把数字转换为字符串,并对小数点指定位数。toLocaleString()把数字转换为字符串,使用本地数字格式顺序。

Js手动实现call和apply方法

需要考虑传入的thisArg的多种类型,将函数设置成thisArg的属性,来实现this的绑定,调用完成后需要delete该属性,使用eval来实现需要传参给该函数的情况

Array数组的常用方法汇

concat()连接两个或更多的数组,并返回结果。every()检测数值元素的每个元素是否都符合条件。filter()检测数值元素,并返回符合条件所有元素的数组。

js中math方法_整理js中常用的math方法总结

记录下与Math有关的常用方法,如:求最大值、最小值等,或者是保留几位数啥的。本文主要介绍了JavaScript中Math对象的方法,具有一定的参考价值,下面跟着小编一起来看下吧

js中Element.getBoundingClientRect()方法

Element.getBoundingClientRect()方法返回元素的大小及其相对于视口的位置。返回值是一个 DOMRect 对象,这个对象是由该元素的 getClientRects() 方法返回的一组矩形的集合, 即:是与该元素相关的CSS 边框集合

JS对象常用方法总结

charAt()返回在指定位置的字符;charCodeAt()返回咋指定位置的字符的Unicode编码;concat()连接字符串;indexOf()检索字符串,返回的是字符在字符串的下标

JS中toFixed()方法的四舍五入问题解决方法

最近发现JS当中toFixed()方法存在一些问题,采用原生的Number对象的原型对象上的toFixed()方法时,规则并不是所谓的四舍五入

JavaScript 的 sort 方法

使用 sort() 方法对数组进行排序时,最好指定它的参数,否则会出现意料之外的结果,具体请往下看

Js的string.search()方法怎么用?

string.search()是JavaScript中的一个内置方法,用于搜索正则表达式和给定字符串对象之间的匹配。返回值:返回正则表达式与给定字符串对象之间的第一个匹配的索引,如果未找到匹配项则返回-1。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!

文章投稿关于web前端网站点搜索站长推荐网站地图站长QQ:522607023

小程序专栏: 土味情话心理测试脑筋急转弯幽默笑话段子句子语录成语大全运营推广