Heim > Web-Frontend > js-Tutorial > Wie sortiere ich Strings in JavaScript richtig?

Wie sortiere ich Strings in JavaScript richtig?

Susan Sarandon
Freigeben: 2024-11-24 18:40:25
Original
435 Leute haben es durchsucht

How to Correctly Sort Strings in JavaScript?

Sortieren von Zeichenfolgen in JavaScript

Viele JavaScript-Entwickler stoßen aufgrund der Eindeutigkeit auf Herausforderungen, wenn sie versuchen, eine Liste von Objekten basierend auf einem Zeichenfolgenattribut zu sortieren Verhalten von Strings in JavaScript. In diesem Artikel werden die Lösungen für dieses häufige Problem untersucht.

Problem:

Wie Sie festgestellt haben, subtrahieren Sie einfach eine Zeichenfolge von einer anderen, wie in a.attr - b.attr , sortiert Zeichenfolgen in JavaScript nicht genau. Dies liegt daran, dass JavaScript Zeichenfolgen als Unicode-Zeichen behandelt und grundlegende arithmetische Operationen nicht für den Vergleich geeignet sind.

Lösung:

Um Zeichenfolgen effektiv zu sortieren, können Sie die verwenden String.prototype.localeCompare-Methode. Diese Methode ermöglicht einen länderspezifischen Vergleich von Zeichenfolgen und eignet sich daher besser zum Sortieren. Hier ist eine aktualisierte Version Ihres Codes mit localeCompare:

list.sort(function(a, b) {
    return ('' + a.attr).localeCompare(b.attr);
});
Nach dem Login kopieren

Beachten Sie, dass wir eine leere Zeichenfolgenverkettung ('' a.attr) hinzugefügt haben, um sicherzustellen, dass beide Werte in Zeichenfolgen umgewandelt werden. Dies dient dazu, potenzielle Ausnahmen zu vermeiden.

Alternativen:

Wenn Sie einen prägnanteren Ansatz bevorzugen und die Lokalisierungssensitivität nicht berücksichtigen müssen, können Sie Folgendes verwenden Codeausschnitt:

if (item1.attr < item2.attr)
    return -1;
if ( item1.attr > item2.attr)
    return 1;
return 0;
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie sortiere ich Strings in JavaScript richtig?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage