写在前面
写给自己看的
...
let arr_16 = [1,2,3,4,5]; // reduce 接受两个参数 执行迭代的函数,prev的初始值 console.log(arr_16.reduce(function(prev,cur,index,array){ return prev+cur},100)) // 115 // 如果是没有第二个参数 意思是 执行归并函数reduce的第一次迭代是从数组第二项开始的 此时 第一个参数 prev 是数组第一个值 第二个参数 cur 是数组第二个值 console.log(arr_16.reduce(function(prev,cur,index,array){ return prev+cur})) // 15 // reduceRight 其实就是 从右到左来 reduce是从左往右来 一般区别不大 第二个参数 也是 prev 第一次的初始值 如果没得 默认是开始的数组元素(left or right) console.log(arr_16.reduceRight(function(prev,cur,index,array){ return prev-cur})); // -5 console.log(arr_16.reduceRight(function(prev,cur,index,array){ return prev+cur})); // 15 console.log(arr_16.reduce(function(prev,cur,index,array){ return prev+cur})); // 15
以上
....