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);