¿Cómo puedo ordenar una [matriz de objetos por fecha] que es el segundo hijo de una matriz?
Obtengo la siguiente estructura de matriz:
array = [ ["2022/04/14", [object]], ["2022/04/15", [object]], ["2022/04/20", [object, object, object]], ["2022/04/25", [object, object]], ["2022/04/30", [object]] ]; //where each object contain a date property that include time //for exemple each object get : { param1:"someText" date: Fri Apr 15 2022 18:00:00 GMT+0200 paramX:"someText" }Para los días que incluyen más de un objeto, los objetos no se ordenan por hora.
He enviado un mensaje de texto con el siguiente método, pero no puedo tener éxito con él
const sortedArray = array.sort((a, b) => { return new Date(a[1][1].date).getTime() - new Date(b[1][1].date).getTime(); });¿Cómo puedo ordenar objetos por hora para cada día de esta matriz?
Gracias por tu ayuda
Seguramente hay una forma más elegante de resolver este problema, pero aquí está mi enfoque.
// Here is the result of sorting the objects const formattedArray = []; const sortedArray = array.forEach((item, index) => { const sortedObjects = item[1].sort((a, b) => { return new Date(a.date) - new Date(b.date); }); formattedArray[index] = [item[0], sortedObjects]; }) No necesita usar .getTime() .