Js的reduce()方法

Js 数组reduce()方法应用一个函数针对数组的两个值(从左到右),以减至一个值。
语法:array.reduce(callback[, initialValue])
参数说明:
1)callback是调用方法;
2)initialValue是callback初次调用时的第一个参数值。

示例1--数组求和:

    [1,2,3,4,5].reduce((prev,next)=>{
        return prev+next;
    })//返回值15

示例2--对象求和:

var ps = [{'p':1,'num':1},{'p':2,'num':2},{'p':3,'num':3},{'p':4,'num':4}];
    ps.reduce((prev,next)=>{
        return prev+next.p*next.num;
    },0)//回调函数的第一次调用时,第一个参数是0,第二个参数是ps[0]

 示例3

let titles= titles:[
          {
            title:"你的",
            content:"你的东西",
            url:"https://www.baidu.com",
            completed:false
          },
          {
            title:"我的",
            content:"我的东西",
            url:"http://www.youku.com",
            completed:true
          },
          {
            title:"他的",
            content:"他的东西",
            url:"http://sjzx.niha.org.cn",
            completed:true
          }
        ]

 let completeSize = this.titles.reduce((preTotal, title) => preTotal + (title.completed?1:0) ,0) 

 

posted @ 2019-01-17 11:02  flywong  阅读(5772)  评论(0编辑  收藏  举报