reduce学习笔记

2020-08-26 11:01:52 浏览数 (1)

操作数组的高逼格方法———reduce()的简单使用

1、语法

1arr.reduce(callback,[initialValue])

功能:为数组的每个元素执行回调函数;接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

参数:callback为回调函数 initialValue为第一次调用callback的第一个参数

其中callback函数接收四个参数:

代码语言:javascript复制
   1、previousValue (上一次调用回调返回的值,或是提供的初始值(initialValue))
   2、currentValue (数组中当前被处理的元素)
   3、index (当前元素在数组中的索引)
   4、array (调用 reduce 的数组)

举个栗子:

1let arr = [1, 2, 3, 4]; 2let sum = arr.reduce((prev, cur, index, arr)=> { 3 console.log(prev, cur, index); 4 return prev cur; 5})//未设定初始值 6console.log(arr, sum);

输出结果为:

11 2 1 23 3 2 36 4 3 4[ 1, 2, 3, 4 ] 10

在未指定初始initialValue的时候,index是从1开始的,第一次的prev的值是数组的第一个元素,循环3次;

再举个栗子:

0 人点赞