美文网首页
Array.prototype.reduce(callback(

Array.prototype.reduce(callback(

作者: AtomYuan | 来源:发表于2019-02-27 20:36 被阅读0次

    Array.prototype.reduce()

    Array.prototype.reduce()是数组的一个公共方法,其功能是给数组中每个元素进行callback回调,callback函数中接受四个参数:

    1. accumulator:累计器
    2. currentValue:当前值
    3. currentIndex:当前索引
    4. array:数组

    每个参数的作用

    1.参数的位置:callback(accumulator, currentValue, currentIndex, array);
    2.例子:

    const reducer = (accumulator, currentValue) => accumulator + currentValue; 
    [1,2,3,4].reduce( reducer );
    //1+2+3+4
    //expect export 10
    [1,2,3,4].reduce( reducer , 5 );
    //5+1+2+3+4
    //expect export 15
    

    剖析:
    accumulator即是一个初始值,也是一个累计器,如若在reduce中没有传initiaValue,则accumulator的值为数组中的第一个值,currentValue的值为数组中的第二个值,若reduce中传了initiaValue,则accumulator的值为initiaValue,currentValue的值为数组中的第一个值,而每次callback调用后的返回结果返回到accumulator上,currentValue的值在下一次callback回调时就是上一个currentValue在数组里之后的值,最后返回accumulator。

    相关文章

      网友评论

          本文标题:Array.prototype.reduce(callback(

          本文链接:https://www.haomeiwen.com/subject/fkrquqtx.html