reduce的基础用法

    技术2022-07-20  59

    reduce是一种数组运算,通常用于将数组的所有成员"累积"为一个值。

    例1:

    let arr = [1, 2, 3, 4, 5, 6] let sum = (a, b) => a + b arr.reduce(sum, 0); //21

    上面代码中,reduce对数组arr的每个成员执行sum函数。sum的参数a是累积变量,参数b是当前的数组成员。每次执行时,b会加到a,最后输出a。

    累积变量必须有一个初始值,上例是reduce函数的第二个参数0。如果省略该参数,那么初始值默认是数组的第一个成员。

    例2:

    let arr = [1, 2, 3, 4, 5, 6] let text = (newArr, item) => { newArr.push(item + 1) return newArr } arr.reduce(text, []) //[2, 3, 4, 5, 6, 7]

    上面代码中,累积变量的初始值是一个空数组,结果reduce就返回了一个新数组,等同于执行map方法,对原数组进行一次"变形"。

    Processed: 0.008, SQL: 9