var arr=[
{
banci: "09:00-21:00",
nowday: "5月18日",
shiftName: "白班",
sid: "21381668786929665",
},
{
banci: "21:00-09:00",
nowday: "5月18日",
shiftName: "晚班",
sid: "21381668786929665",
},
{
banci: "09:00-21:00",
nowday: "5月19日",
shiftName: "白班",
sid: "21381668786929665",
},
{
banci: "21:00-09:00",
nowday: "5月19日",
shiftName: "晚班",
sid: "21381668786929665",
},
{
banci: "09:00-21:00",
nowday: "5月20日",
shiftName: "白班",
sid: "21381668786929665",
},
{
banci: "21:00-09:00",
nowday: "5月20日",
shiftName: "晚班",
sid: "21381668786929665",
},
]
目标对象数组
dateTitle=[
{
nowday: "5月18日",
children:[
{
banci: "09:00-21:00",
nowday: "5月18日",
shiftName: "白班",
sid: "21381668786929665",
},
{
banci: "21:00-09:00",
nowday: "5月18日",
shiftName: "晚班",
sid: "21381668786929665",
},
]
},
{
nowday: "5月19日",
children:[
{
banci: "09:00-21:00",
nowday: "5月19日",
shiftName: "白班",
sid: "21381668786929665",
},
{
banci: "21:00-09:00",
nowday: "5月19日",
shiftName: "晚班",
sid: "21381668786929665",
},
]
},
{
nowday: "5月20日",
children:[
{
banci: "09:00-21:00",
nowday: "5月20日",
shiftName: "白班",
sid: "21381668786929665",
},
{
banci: "21:00-09:00",
nowday: "5月20日",
shiftName: "晚班",
sid: "21381668786929665",
},
]
},
]
解构重组方法
let testArr = [];
let resultArr = [];
for (let i = 0; i < arr.length; i++) {//arr是上面的数组
if (testArr.indexOf(arr[i].nowday) === -1) {
resultArr.push({
nowday: arr[i].nowday,
children: [arr[i]]
});
testArr.push(arr[i].nowday);
} else {
for (let j = 0; j < resultArr.length; j++) {
if (resultArr[j].nowday == arr[i].nowday) {
resultArr[j].children.push(arr[i]);
break;
}
}
}
}
this.dateTitle=resultArr