Heim >Web-Frontend >js-Tutorial >Wie sortiere ich Objekte mithilfe von JavaScript effizient nach Datumsschlüssel?

Wie sortiere ich Objekte mithilfe von JavaScript effizient nach Datumsschlüssel?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-02 20:22:03278Durchsuche

How to Efficiently Sort Objects by Date Key Using JavaScript?

Objekte effizient nach Datumsschlüssel sortieren

Ein Array von Objekten mit mehreren Schlüssel-Wert-Paaren muss basierend auf „updated_at“ sortiert werden. Schlüssel, der Datumsangaben enthält. Ziel ist es, die effizienteste Methode zur Erfüllung dieser Aufgabe zu finden.

Ein effektiver Ansatz ist die Verwendung der Methode Array.sort(). Diese Funktion verwendet als Argument eine Vergleichsfunktion, die die Sortierreihenfolge bestimmt. Unten finden Sie ein Beispiel, das die Implementierung demonstriert:



var arr = [{</p>
<pre class="brush:php;toolbar:false">"updated_at": "2012-01-01T06:25:24Z",
"foo": "bar"

},
{

"updated_at": "2012-01-09T11:25:13Z",
"foo": "bar"

},
{

"updated_at": "2012-01-05T04:13:24Z",
"foo": "bar"

}
]

arr.sort(function(a, b) {
var keyA = new Date(a.updated_at),

keyB = new Date(b.updated_at);

// Vergleichen Sie die beiden Daten
if (keyA < keyB) return -1;
if (keyA > keyB) return 1;
return 0;
});

console.log(arr);


Innerhalb der Vergleichsfunktion werden die „updated_at“-Werte jedes Elements in Datumsobjekte konvertiert und verglichen. Die Sortierreihenfolge wird durch die Rückgabe von -1 festgelegt, wenn keyA früher liegt, 1, wenn keyA später liegt, oder 0, wenn sie gleich sind. Durch diesen Vorgang wird sichergestellt, dass das Array in aufsteigender Datumsreihenfolge sortiert wird.

Das obige ist der detaillierte Inhalt vonWie sortiere ich Objekte mithilfe von JavaScript effizient nach Datumsschlüssel?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn