1.原始数据
//原始数据
const data = [{
id: 1,
address: '长沙',
businessId: 1001,
date: '2012-12-01'
}, {
id: 2,
address: '岳阳',
businessId: 1002,
date: '2012-12-01'
}, {
id: 3,
address: '株洲',
businessId: 1003,
date: '2012-12-02'
}, {
id: 3,
address: '郴州',
businessId: 1004,
date: '2012-12-03'
}]
2.封装的方法
//方法
function arrayTransfer(data) {
const listArr = [];
data.forEach(function (el) {
for (let i = 0; i < listArr.length; i++) {
if (listArr[i].date === el.date) {
listArr[i].listInfo.push({
id: el.id,
address: el.address,
businessId: el.businessId,
date: el.date
});
return;
}
}
listArr.push({
date: el.date,
listInfo: [{
id: el.id,
address: el.address,
businessId: el.businessId,
date: el.date
}]
})
})
return listArr
}
console.log(arrayTransfer(data));
3.目标数据
[
{
"date":"2012-12-01",
"listInfo":[
{
"id":1,
"address":"长沙",
"businessId":1001,
"date":"2012-12-01"
},
{
"id":2,
"address":"岳阳",
"businessId":1002,
"date":"2012-12-01"
}
]
},
{
"date":"2012-12-02",
"listInfo":[
{
"id":3,
"address":"株洲",
"businessId":1003,
"date":"2012-12-02"
}
]
},
{
"date":"2012-12-03",
"listInfo":[
{
"id":3,
"address":"郴州",
"businessId":1004,
"date":"2012-12-03"
}
]
}
]