Einführung
Array-Sortierung ist eine grundlegende Operation in JavaScript. Allerdings variiert die Stabilität der Array.sort()-Methode je nach Browser.
ECMA-Skript und Stabilität
Die ECMA-Skriptspezifikation definiert keinen spezifischen Sortieralgorithmus oder geben Sie an, ob die Sortierung stabil sein soll. Dies bedeutet, dass verschiedene Browser möglicherweise unterschiedliche Ansätze implementieren, was zu unterschiedlichen Stabilitätseigenschaften führt.
Stabilität über bestimmte Browser hinweg
Beispieltestfall
Um die Stabilität der Sortiermethode zu demonstrieren, ein Testfall mit Wertepaaren kann erstellt werden:
<code class="javascript">function Pair(_x, _y) { this.x = _x; this.y = _y; } function pairSort(a, b) { return a.x - b.x; } var check = []; for (var i = 0; i < 100; ++i) { check.push(new Pair(Math.random() * 3 + 1, ++y)); } check.sort(pairSort);</code>
Wenn die Sortierung stabil ist, werden die Werte zuerst nach ihren x-Werten und dann nach ihren y-Werten sortiert, sodass die ursprüngliche Reihenfolge der Werte mit demselben x-Wert erhalten bleibt bleibt erhalten. Umgekehrt kann eine instabile Sortierung zu unterschiedlichen Reihenfolgen für Werte mit demselben x-Wert führen.
Das obige ist der detaillierte Inhalt vonIst die Array.sort()-Methode von JavaScript in allen Browsern stabil?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!