Ich habe ein Problem, meine Objekt-Arrays nach Datumswerte zu sortieren. Ich fand viele Fragen, die andere Benutzer zuvor gestellt hatten, ich ging alle möglichen Lösungen durch und ich bekam immer noch keine Lösung für mein Sortierproblem. Ich habe zwei verschiedene Arrays erstellt, um die Sortierfunktion zu testen, konnte aber die Daten nicht in der richtigen Reihenfolge abrufen. Hier sind meine Daten:So sortieren Sie Javascript Objekt Array nach Datum?
[Object { eventDate="12/12/2016", display_order="5"},Object { eventDate="12/12/2016", display_order="3"}]
[Object { eventDate="04/21/2016", display_order="3"},Object { eventDate="04/21/2016", display_order="1"}]
ich diese Logik verwendet, um meine Daten von Datumswerten zu sortieren:
entries.sort(function(a,b){
var i = new Date(a.eventDate);
var j = new Date(b.eventDate);
return i-j;
});
Meine Daten noch nicht in der richtigen Reihenfolge sortieren haben diese Funktion verwenden. Dann habe ich versucht, auch meine Array zu sortieren, die wie folgt aussieht:
var dates = Object.keys(groupedByDate);
console.log(dates)
Dies ist Ausgabe für variable Termine: ["12/12/2016", "04/21/2016"]
Dann habe ich versucht, dies zu tun:
dates.sort(function(a, b) {
a = new Date(a.dates);
b = new Date(b.dates);
return a>b ? -1 : a<b ? 1 : 0;
});
Mein Ausgang hat noch sortiere meine Daten nicht in der richtigen Reihenfolge. Ich bin mir nicht sicher, ob ich etwas falsch mache oder etwas anderes könnte in diesem Fall ein Problem sein. Wenn jemand helfen kann, lass es mich wissen. Vielen Dank.
Ich nehme an, Sie es in aufsteigender Reihenfolge sortiert werden soll? Deine Sortierung funktioniert für mich, aber sie sortiert sie in absteigender Reihenfolge .... Wo erwartest du auch nur Daten als Ausgabe? – MinusFour
Ich denke, Ihre erste Sortierfunktion ist korrekt, aber die "Datumsfolge" für den Datumskonstruktor ist nicht. Sie sollten überprüfen, ob die Date-Instanzen korrekt aufgebaut sind. – michaPau