ES6的reduce用法

ES6的reduce用法一个 “reduce” 函数,包含四个参数:previousValue:上一次调用 callbackFn 时的返回值。

大家好,欢迎来到IT知识分享网。

ES6的reduce用法

Array.reduce参数

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

参数

callbackFn

一个 “reduce” 函数,包含四个参数:

  1. previousValue:上一次调用 callbackFn 时的返回值。在第一次调用时,若指定了初始值 initialValue,其值则为 initialValue,否则为数组索引为 0 的元素 array[0]。
  2. currentValue:数组中正在处理的元素。在第一次调用时,若指定了初始值 initialValue,其值则为数组索引为 0 的元素 array[0],否则为 array[1]。
  3. currentIndex:数组中正在处理的元素的索引。若指定了初始值 initialValue,则起始索引号为 0,否则从索引 1 起始。
  4. array:用于遍历的数组。

initialValue 可选

作为第一次调用 callback 函数时参数 previousValue 的值。若指定了初始值 initialValue,则 currentValue 则将使用数组第一个元素;否则 previousValue 将使用数组第一个元素,而 currentValue 将使用数组第二个元素。

返回值

使用 “reduce” 回调函数遍历整个数组后的结果。

使用场景

1. 求和数组(基本用法)

let list = [5, 6, 7, 8, 9]; let total = list.reduce((val, oldval, currentIndex) => { console.log(val + "&&" + oldval + "&&" + currentIndex); return val + oldval; }); console.log(total);

ES6的reduce用法

控制台执行结果

最终得到的total=35 是不是很easy!!

下面的例子我们开始给一个默认值看看出现了哪些变化呢?我们来继续改动一下代码如下:

let list = [5, 6, 7, 8, 9]; let total = list.reduce((val, oldval, currentIndex) => { console.log(val + "&&" + oldval + "&&" + currentIndex); return val + oldval; },10); console.log(total);

ES6的reduce用法

控制台执行结果

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/89838.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信