I have array result, if array values is same create new array list
This is my example array:
[
{
"dayName": 1,
"time": {
"availabilityId": 1,
"fromTime": "05:30:00",
"toTime": "10:00:00"
}
},
{
"dayName": 1,
"time": {
"availabilityId": 2,
"fromTime": "10:30:00",
"toTime": "06:00:00"
}
},
{
"dayName": 2,
"time": {
"availabilityId": 3,
"fromTime": "16:30:00",
"toTime": "22:00:00"
}
}
]
But i want this array like this
[
{
"dayName": 1,
"time":[
{
"availabilityId": 1,
"fromTime": "05:30:00",
"toTime": "10:00:00"
},
{
"availabilityId": 2,
"fromTime": "10:30:00",
"toTime": "06:00:00"
}
]
},
{
"dayName": 2,
"time":[
{
"availabilityId": 3,
"fromTime": "16:30:00",
"toTime": "22:00:00"
}
]
}
]
Because in first 2 array dayName are same, so i want to create like array of array
This is code for i tried
CubbersAvailability.findAll(
{
where:{
cubbersId:cubbersId,
userId:userId,
status:1
},
attributes:['availabilityId', 'dayName', 'fromTime', 'toTime']
}
).then(availabilityList =>{
let list = [];
availabilityList.forEach(result => {
list.push({
"dayName": result.dayName,
"time": {
"availabilityId": result.availabilityId,
"fromTime": result.fromTime,
"toTime": result.toTime
}
});
});