I need to sort the following array of objects:
let data = [{
"data": {
"date_entered": "2021-02-18",
"order": "2",
},
},
{
"data": {
"date_entered": "2021-02-18",
"order": "1",
}
},
{
"data": {
"date_entered": "2021-02-15",
"order": "",
},
},
{
"data": {
"date_entered": "2021-02-18",
"order": "",
},
}
];
It firstly needs to sort by the order value and then sort by the date_entered, this is the code that i have written so far, but it seems to display the data3 data4 first instead of data2, data1, data4, data3
return function (a, b) {
return (
parseInt(a.data.order) - parseInt(b.data.order) ||
new Date(b.data.date_entered).getTime() -
new Date(a.data.date_entered).getTime()
);
};
Any ideas as to what I am doing wrong? would greatly appreciate any help :)