Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie sortiere ich ein Array von Objekten nach einem einzelnen Datumsschlüssel?

DDD
Freigeben: 2024-11-04 02:41:02
Original
531 Leute haben es durchsucht

How to Sort an Array of Objects by a Single Date Key?

Sortieren eines Arrays von Objekten nach einem einzelnen Datumsschlüssel

Um ein Array von Objekten nach einem einzelnen Schlüssel zu sortieren, der einen Datumswert enthält, Der effizienteste Ansatz ist die Verwendung der Array.sort-Methode. So können Sie es machen:

var arr = [{
    "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);
  // Compare the 2 dates
  if (keyA < keyB) return -1;
  if (keyA > keyB) return 1;
  return 0;
});

console.log(arr);
Nach dem Login kopieren

In diesem Beispiel haben wir ein Array von Objekten mit dem Namen „arr“, das drei Objekte enthält, jedes mit einem „updated_at“-Schlüssel, der einen Datumswert enthält.

Die Array.sort-Methode verwendet eine Vergleichsfunktion als Argument. In der bereitgestellten Vergleichsfunktion:

  1. Wir extrahieren die „updated_at“-Werte aus jedem Objekt als Datumsobjekte.
  2. Wir vergleichen die beiden Datumsobjekte. Wenn der erste vor dem zweiten liegt, geben wir -1 zurück. Wenn es später ist, geben wir 1 zurück. Wenn sie gleich sind, geben wir 0 zurück.
  3. Diese Vergleichsfunktion sortiert das Array in aufsteigender Reihenfolge basierend auf den „updated_at“-Werten.

Die Das sortierte Array wird dann in der Konsole protokolliert und zeigt die Objekte in chronologischer Reihenfolge an.

Das obige ist der detaillierte Inhalt vonWie sortiere ich ein Array von Objekten nach einem einzelnen Datumsschlüssel?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage