数组reduce方法的使用

数组reduce方法语法.png
// 使用 reduce 方法时,你要传入一个回调函数,这个回调函数的参数是一个 累加器 (比如例子中的 previousVal) 和当前值 (currentVal)。
// reduce 方法有一个可选的第二参数,它可以被用来设置累加器的初始值。如果没有在这定义初始值,那么初始值将变成数组中的第一项,而 currentVal 将从数组的第二项开始。
let arr = [1, 2, 3, 4, 5];
let sum = arr.reduce(function(prev, cur, index, arr) {
    //输出的是第一项的值或上一次叠加的结果,正在被处理的元素,正在被处理的元素的索引值
    console.log(prev, cur, index);  
    return prev + cur;
})
console.log("arr==>",arr, "sum==>",sum); //输入数组本身和最后的结果

let x = NaN;
let sum2 = arr.reduce(function(prev, cur, index, arr) {
    console.log(prev, cur, index);  
    return prev + cur;
},x)
console.log("arr==>",arr, "sum2==>",sum2);

let y = 0;
let sum3 = arr.reduce(function(prev, cur, index, arr) {
    console.log(prev, cur, index);  
    return prev + cur;
},y)
console.log("arr==>",arr, "sum3==>",sum3);

let z = 10;
let sum4 = arr.reduce(function(prev, cur, index, arr) {
    console.log(prev, cur, index);  
    return prev + cur;
},z)
console.log("arr==>",arr, "sum4==>",sum4);
打印结果_看图王.JPG
let arr2 = [0,0,0,0];
let res = arr2.reduce(function(prev, cur, index, arr) {
    console.log(prev, cur, index);  
    return prev + cur;
},0)
console.log("arr2==>",arr2, "res==>",res);

let res2 = arr2.reduce(function(prev, cur, index, arr) {
    console.log(prev, cur, index);  
    return prev + cur;
},5)
console.log("arr2==>",arr2, "res2==>",res2);

let res3 = arr2.reduce(function(prev, cur, index, arr) {
    console.log(prev, cur, index);  
    return prev;
},5)
console.log("arr2==>",arr2, "res3==>",res3);

let res4 = arr2.reduce(function(prev, cur, index, arr) {
    console.log(prev, cur, index);  
    return cur;
},5)
console.log("arr2==>",arr2, "res4==>",res4);

打印2.JPG
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容