Heim  >  Artikel  >  Web-Frontend  >  Wie sortiere ich ein Array von Objekten nach einem Attribut (z. B. „Name“) in JavaScript?

Wie sortiere ich ein Array von Objekten nach einem Attribut (z. B. „Name“) in JavaScript?

Barbara Streisand
Barbara StreisandOriginal
2024-10-23 10:55:58328Durchsuche

How to Sort an Array of Objects by an Attribute (e.g.,

Sortieren eines Arrays von Objekten basierend auf einem Attribut mit jQuery oder JavaScript

In der Webentwicklung ist es üblich, mit in Arrays gespeicherten Objekten zu arbeiten . Das Sortieren dieser Objekte kann für verschiedene Szenarios erforderlich sein, beispielsweise für die Anzeige von Daten in einer bestimmten Reihenfolge. In dieser Frage besteht das Ziel darin, ein Array von Objekten in aufsteigender Reihenfolge basierend auf dem Attribut „Name“ zu sortieren.

Um dies zu erreichen, können wir die JavaScript-Sortierfunktion zusammen mit einer benutzerdefinierten Komparatorfunktion verwenden. Eine Komparatorfunktion ist eine Funktion, die zwei Array-Elemente als Eingabe verwendet und je nach Vergleich einen negativen, Null- oder positiven Wert zurückgibt.

Die bereitgestellte Komparatorfunktion, SortByName, beginnt mit der Konvertierung beider „Name“-Attribute in Kleinschreibung für Sortierung ohne Berücksichtigung der Groß-/Kleinschreibung. Anschließend werden die beiden Werte anhand der folgenden Logik verglichen:

  • Wenn aName kleiner als bName ist, wird -1 zurückgegeben.
  • Wenn aName größer als bName ist, wird 1 zurückgegeben.
  • Wenn sie gleich sind, wird 0 zurückgegeben.

Mit dieser Komparatorfunktion können wir sie wie folgt auf die Sortierfunktion anwenden:

<code class="javascript">array.sort(SortByName);</code>

Dies sortiert das Array in aufsteigender Reihenfolge basierend auf dem Attribut „Name“.

Das obige ist der detaillierte Inhalt vonWie sortiere ich ein Array von Objekten nach einem Attribut (z. B. „Name“) in JavaScript?. 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