Javascript Lodash groupby对象和组合数组

Javascript Lodash groupby对象和组合数组,javascript,lodash,Javascript,Lodash,我有日历数据看起来像 [ { date: 1488128400000, details: [ { time: '01.00 - 02.00', title: 'go sleep' } ] }, { date: 1488128400000, details: [ { time: '05.30 - 06.30', title: 'wakeup' } ] }, {

我有日历数据看起来像

[ 
  { 
    date: 1488128400000,
      details: [ 
        { time: '01.00 - 02.00', title: 'go sleep' } 
      ] 
  },
  { 
    date: 1488128400000,    
      details: [ 
        { time: '05.30 - 06.30', title: 'wakeup' } 
      ]
  },
  { 
    date: 1488301200000,
      details: [ 
        { time: '09.00 - 10.00', title: 'go to school' } 
    ]   
  } 
]
我想对相同的日期进行分组,并像这样合并每个细节数组

[ 
  { 
    date: 1488128400000,
      details: [ 
        { time: '01.00 - 02.00', title: 'go sleep' },
        { time: '05.30 - 06.30', title: 'wakeup' } 
      ] 
  },
  { 
    date: 1488301200000,
      details: [ 
        { time: '09.00 - 10.00', title: 'go to school' } 
    ]   
  } 
]
我能用Lodash解决这个问题吗

我刚刚研究了Lodash,我不知道这个案例,也不知道搜索这个案例的关键字

谢谢

您不需要使用lodash。以下内容实现了您正在尝试的操作。尽管您可能需要一些多边形填充,但这取决于您所需的浏览器支持。


我试着不用洛达斯来解决你的问题。希望我能帮助你

var data =  [ 
  { 
    date: 1488128400000,
      details: [ 
        { time: '01.00 - 02.00', title: 'go sleep' } 
      ] 
  },
  { 
    date: 1488128400000,    
      details: [ 
        { time: '05.30 - 06.30', title: 'wakeup' } 
      ]
  },
  { 
    date: 1488301200000,
      details: [ 
        { time: '09.00 - 10.00', title: 'go to school' } 
    ]   
  } 
];

for(var i=0; i< data.length; i++){
    for(var j = i+1; j<data.length ; j++){
    if(data[i].date == data[j].date){
                for(var k = 0; k < data[j].details.length; k++){
            data[i].details.push(data[j].details[k]);
        }
        data.splice(j,1);
    }
  }
}

console.log(data);
var data =  [ 
  { 
    date: 1488128400000,
      details: [ 
        { time: '01.00 - 02.00', title: 'go sleep' } 
      ] 
  },
  { 
    date: 1488128400000,    
      details: [ 
        { time: '05.30 - 06.30', title: 'wakeup' } 
      ]
  },
  { 
    date: 1488301200000,
      details: [ 
        { time: '09.00 - 10.00', title: 'go to school' } 
    ]   
  } 
];

for(var i=0; i< data.length; i++){
    for(var j = i+1; j<data.length ; j++){
    if(data[i].date == data[j].date){
                for(var k = 0; k < data[j].details.length; k++){
            data[i].details.push(data[j].details[k]);
        }
        data.splice(j,1);
    }
  }
}

console.log(data);