6、【ES6】之数组的map、reduce操作


ES6之数组的map、reduce操作

      类比:java中的lamdba表达式中的map和reduce

    1、map():接收一个函数,将原数组中的所有元素用这个函数处理之后放入新的数组返回

    let arr=[3,20,-15,5];
    // arr = arr.map((item)=>{
    //   return item * 2;
    // })

    // arr = arr.map(item => item *2);

    // console.log(arr);

  2、reduce(callback,[initialValue])  

    reduce()为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素     接受四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,当前调用reduce的数组     initialValue :提供的默认初始值     callback:执行数组中每个值得函数,包含一下四个参数     1.previousValue(上一次调用回调的返回值,或者是提供的初始值)     2.currentValue(数组中当前被处理的元素)     3.index(数组下标的索引)     4.array(调用reduce的数组)
      arr.reduce((a,b)=>{
        console.log("处理后的值:"+a);
        console.log("正在处理的值:"+b);
        return a+b;
       
      },50)