Heim >Web-Frontend >js-Tutorial >Erfahren Sie mehr über die Methoden zur Neuordnung von Javascript-Arrays
Native Neuordnungsmethode des Javascript-Arrays
(1) Funktion
Position umkehren der Elemente im Array (ändern Sie das ursprüngliche Array)
(2) Syntax
arr.reverse() //没有参数
(3) Beispiel
let myArray = [ 'one', 'two', 'three' ]; myArray.reverse(); console.log(myArray); // ["three", "two", "one"]
(4) Rückgabewert
Durch die Referenz des ursprünglichen Arrays wird kein neues Array generiert
let myArray = [ 'one', 'two', 'three' ]; let result = myArray.reverse(); result[2] = 2; console.log(myArray); //["three", "two", 2] console.log(result); //["three", "two", 2]
(5) Nachteile
Nicht sehr flexibel, das Array kann nur umgekehrt werden
(1) Funktion
sort() sortiert die Elemente des Arrays an der entsprechenden Position (das ursprüngliche Array ändert sich)
(2) Syntax
arr.sort(); arr.sort(compareFunction);
(3) Parameter
ist optional. Wird verwendet, um eine Funktion zu formulieren, die in einer bestimmten Reihenfolge sortiert.
Wenn beispielsweise Parameter weggelassen werden, nennen Sie es so.
arr.sort() //没有添加参数
Die Funktion sort() wendet die folgenden Parameter an, daher ist der Standardvergleich der Unicode-Code
//关于sort 的可选参数 //如果没有设置参数,v8 中会自动生成一个参数 if (!IS_CALLABLE(comparefn)) { //这是默认的参数值 comparefn = function (x, y) { if (x === y) return 0; if (%_IsSmi(x) && %_IsSmi(y)) { return %SmiLexicographicCompare(x, y); } //在这里 会把参数全都转换为 Unicode 在进行比较 x = TO_STRING(x); y = TO_STRING(y); if (x == y) return 0; else return x < y ? -1 : 1; }; }
(4) Prinzip
1. Stellen Sie zuerst die Parameter ein und geben Sie sie selbst ein Oder verwenden Sie den Standardwert
2. Wenn die Anzahl der Elemente weniger als 2 ist, geben Sie direkt zurück
3. Bestimmen Sie, ob das aktuelle Objekt ein Array ist kein Array, der Wert in der Prototypenkette wird in das aktuelle Array kopiert und sortiert
var arry = [1,2,3,4,2,5]; var a = {}; a.proto = arry; a.sort() // Array {0: 1, 1: 2, 2: 2, 3: 3, 4: 4, 5: 4}
4. Alle undefinierten Werte im Array am Ende sortieren,
5 . Sortieren Sie alle Werte im Array, die nicht undefiniert sind
6. Wenn die Anzahl der Elemente im Array kleiner oder gleich 10 ist, verwenden Sie InsertionSort zum Sortieren
//comparefn 是sort 的参数 //参数可以自己传入 ,或者使用v8 默认的值 function InsertionSort(a, from, to) { for (var i = from + 1; i < to; i++) { var element = a[i]; for (var j = i - 1; j >= from; j--) { var tmp = a[j]; var order = comparefn(tmp, element); if (order > 0) { a[j + 1] = tmp; } else { break; } } a[j + 1] = element; } };
7. Wenn die Anzahl der Elemente im Array mehr als 10 beträgt, verwenden Sie die Schnellsortierung
Das obige ist der detaillierte Inhalt vonErfahren Sie mehr über die Methoden zur Neuordnung von Javascript-Arrays. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!