Sum all data in array of objects into new array of objects

后端 未结 14 976
借酒劲吻你
借酒劲吻你 2020-12-29 03:32

I have an array of objects that looks like this:

var data = [{costOfAirtickets: 2500, costOfHotel: 1200},{costOfAirtickets: 1500, costOfHotel: 1000}]
         


        
14条回答
  •  臣服心动
    2020-12-29 04:19

    This is the easiest approach I could think off

    var data = [{costOfAirtickets: 2500, costOfHotel: 1200},{costOfAirtickets: 1500, costOfHotel: 1000}];
    var sum ={};
    for(var obj in data){
      for(var ele in data[obj]){
        if(!data[obj].hasOwnProperty(ele)) continue;
          if(sum[ele] === undefined){
            sum[ele] = data[obj][ele];
          }else{
            sum[ele] = sum[ele] + data[obj][ele];
          }
      }
    
    }
    var arr = [sum];
    console.log(arr);
    

提交回复
热议问题