es6中reduce()方法和reduceRight()方法

es6中reduce()方法
从左往右开始

参数:
prev:它是上一次调用回调时返回的结果,每次调用的结果都会给prev

cur:当前的元素

index:当前的索引

arr:循环的数组

返回值:
函数累计处理的结果

demo:
求数组的和。

var a = [1,2,3,4,5,6,7,8,9,10]

var str = a.reduce(function(prev,cur,index,arr){
return prev + cur ;
})
str // 55;
求阶乘

var a = [1,2,3,4,5,6,7,8,9,10]

var str = a.reduce(function(prev,cur,index,arr){
return prev * cur ;
})

str //3628800
求幂

新增的一个运算符

A ** B;

var a = [2,3,4];

var str = a.reduce(function(prev,cur,index,arr){
return prev ** cur ;
})

str // 4096
 将二维数组转换成一维

var a= [[0,1],[2,3],[4,5],[6,7],[8,9]];

var str = a.reduce(function(prev,cur){
return prev.concat(cur)
})

str //(10) [0,1, 2, 3, 4, 5, 6, 7, 8, 9]
 数组去重

var arr = [1,2,1,2,3,5,4,5,3,4,4,4,4];
var str = arr.sort().reduce((prev, cur)=>{
if(prev.length===0 || prev[prev.length-1]!==cur){
prev.push(cur);
}
return prev;
}, []);
str // (5) [1, 2, 3, 4, 5]

es6中reduceRight()方法
从右往左开始

参数和上面是一样。

结果都是一样的我就不写代码了

————————————————
版权声明:本文为CSDN博主「阿泽啊」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41702660/article/details/81949459

原文地址:https://www.cnblogs.com/sexintercourse/p/11802480.html

时间: 2024-10-09 12:45:30

es6中reduce()方法和reduceRight()方法的相关文章

Javascript中call方法和apply方法用法和区别

第一次在博客园上面写博客,知识因为看书的时候发现了一些有意思的知识,顺便查了一下资料,就发到博客上来了,希望对大家有点帮助. 连续几天阅读<javascript高级程序设计>这本书了,逐渐发现了以前很多自己完全没有用过甚至见过的神奇知识点.今天在阅读到有关函数的属性和方法的时候,略感高级,于是乎,查阅了不少他人的博客,在此总结一下这两个方法的以下几个方面: 1.call()和apply()的作用和用法 2.什么时候用apply(),什么时候用call() 书上提到,每个函数都包含两个非继承而来

jquery中prop()方法和attr()方法的区别

jquery1.6中新加了一个方法prop(),一直没用过它,官方解释只有一句话:获取在匹配的元素集中的第一个元素的属性值. 大家都知道有的浏览器只要写disabled,checked就可以了,而有的要写成disabled = "disabled",checked="checked",比如用attr("checked")获取checkbox的checked属性时选中的时候可以取到值,值为"checked"但没选中获取值就是un

java中paint方法和paintComponent方法的不同

/* 1.由Component.java源代码中可以看见其中的paint()方法体是空的,在Container中重写了该方法,其子类Window等也重写了该方法 2.由JComponent.java源代码中可以看见其中的paint()方法中调用paintComponent, paintChildren, paintBorder等方法: 所以该类中的paint方法会影响子组件的绘制, 而paintComponent方法只会影响该组件本身 3.paint方法 和 paintComponent方法都是

线程中sleep方法和wait方法有什么区别?(转)

线程中sleep方法和wait方法有什么区别? 如果你没有接触过java的多线程,那么多对于这两个方法可能有点陌生,看名字好像这两个方法是差不多的,但是实际上面差别好大. 首先我们看一下官方的API Sleep(sleep有两个方法,另一个方法传递两个参数,还有一个参数也是时间,只不过是纳秒级别的,所以和这个方法几乎一样,所以这里只分析这个毫秒级别的方法) public static void sleep(long millis) throws InterruptedException 首先是个

ExtJS中listener方法和handler方法的区别

listener方法和handler方法的区别在文档中的说明的太玄乎了,看不懂 listeners监听能够对一个click Event事件添加任意多个的事件响应处理函数 而handler处理只能够通过处理函数一次处理点击响应 Ext.create('Ext.Button', { text : 'Dynamic Handler Button', renderTo: Ext.getBody(), handler : function() { // this button will spit out

jquery中attr方法和prop方法的区别

关于checked的属性,最重要的概念就是你要记住,它跟checked的状态值是毫无关系的,设置checked = "checked"或者checked = "true"等属性设置,和它的状态值true/false是无关的.,而这里的属性值,事实上只是和defaultChecked的状态值有关,并且只能用来设置checkbox的初始的值.checked的属性值并不会随着checkbox的的状态变化而变化,可是checkbox的状态值却会.因此,为了能更好的跨浏览器的

Jsp 和 servlet中Get方法和Post方法的区别

看了很久的javaEE 这里是我一直的困惑,我在这里总结一下. 1:请求数据的大小不同. 因为get请求的数据是要追加到URL中,而URL的数据量一般不能超过2K,所以用get请求的方法对数据的大小有限制.而post请求方法是把数据放在消息体中,所以理论上对数据量没有限制.(但是实际操作中也不能能太大) 2:安全性不一样 因为get请求的数据是追加在URL中,外部用户能很方便的看到,从这个角度上来讲不安全.而post方法因为是讲请求放在消息体中,不会直接在URL中显示所以从这个角度来说数据会比较

jquery中prop()方法和attr()方法的区别浅析

jquery1.6中新加了一个方法prop(),一直没用过它,官方解释只有一句话:获取在匹配的元素集中的第一个元素的属性值. 大家都知道有的浏览器只要写disabled,checked就可以了,而有的要写成disabled = "disabled",checked="checked",比如用attr("checked")获取checkbox的checked属性时选中的时候可以取到值,值为"checked"但没选中获取值就是un

转:Scanner中nextLine()方法和next()方法的区别

原文地址:https://blog.csdn.net/hello_word2/article/details/54895106 总结:next() 读取第一个 空白符之前(不包括空白符)的内容,nextline() 读取 第一个回车之前(不包括回车)的内容 我们在使用扫描器Scanner时,遇到了字符串肯定会使用API中定义好的next()和nextLine()方法.两者一个是能读取空格一个是不能读取空格就像下面的样子 当我们把二者交换位置,再来看一下效果 那么这是为什么呢?我们分别看一下API