数组的reduce和reduceRight方法

1.reduce方法可用接收两个参数:

  • 第一个参数:为一个回调函数,此回调函数又可以有四个参数
    • 第1个参数:为上一次回调函数return的结果首次默认为第二个参数值,如果没有第二个参数值,则默认当前数组的第一个元素;
    • 第2个参数:为当前元素;
    • 第3个参数:为当前索引值;
    • 第4个参数:为数组本身;
  • 第二个参数:可以设定任何值,会作为第一个回调函数初次进行时该函数的第一个参数的值

 运行结果如下图:

数组的reduce和reduceRight方法_第1张图片 

2.reduceRight :参数与使用方法和reduce一致,区别于reduce方法的只是它是从右往左执行的

const arr = ["March", "Jan", 6, 2, "A", "a"];
const newArr = arr.reduceRight((acc, cur, index) => {
  typeof cur === "string" && acc.push(cur);
  return acc;
}, []);
//这里打印之后可以看出,毕竟过滤了非字符串的参数,还将数组反转了
console.log(newArr);//[ 'a', 'A', 'Jan', 'March' ]

如上图所示,当你想对一个数组进行反转加过滤等操作的时候,这个方法就完全突出了他的便携!

你可能感兴趣的:(javascript,开发语言,ecmascript)