Heim > Web-Frontend > js-Tutorial > Hauptteil

Verschiedene Verwendungsmöglichkeiten von Sort() function_javascript Fähigkeiten

WBOY
Freigeben: 2016-05-16 15:10:00
Original
1661 Leute haben es durchsucht

Die Methode sort() wird verwendet, um die Elemente eines Arrays zu sortieren. Im Header-Dateialgorithmus enthalten

Grammatik

arrayObject.sort(sortby)

参数 描述
sortby 可选。规定排序顺序。必须是函数。

Rückgabewert

Ein Verweis auf ein Array. Bitte beachten Sie, dass das Array nach dem Original-Array sortiert wird und keine Kopie erstellt wird.

1. Standardsituation

Standardmäßig sortiert die Methode sort() Array-Elemente in aufsteigender Reihenfolge. Um eine Sortierung zu erreichen, ruft die Methode sort() die Konvertierungsmethode toString() jedes Array-Elements auf und vergleicht dann die resultierenden Zeichenfolgen, um zu bestimmen, wie sortiert werden soll. Wie folgt:

var values = ["orange","apple","banana"];
values.sort();
console.log(values);//结果["apple", "banana", "orange"]
Nach dem Login kopieren

Auch wenn jedes Element im Array ein numerischer Wert ist, vergleicht die Methode sort() Zeichenfolgen wie folgt:

var values = [,,,,];
values.sort();
console.log(values);//结果[, , , , ]
Nach dem Login kopieren

2. Sortieren Sie die Werte

Die Methode sort() kann eine Vergleichsfunktion als Parameter empfangen.

Wenn der erste Parameter vor dem zweiten Parameter stehen sollte, gibt sie eine negative Zahl zurück. Wenn die beiden Parameter gleich sind, gibt sie 0 zurück. Wenn der erste Parameter nach dem zweiten Parameter steht, wird zurückgegeben eine positive Zahl.

function compare(a, b){
return (a - b);
}//按升序排列的比较函数
var values = [,,,,];
values.sort(compare);
console.log(values);//结果[, , , , ]
Nach dem Login kopieren

3. Sortieren Sie das Array nach einem Objektattribut

Definieren Sie zunächst eine Funktion, die einen Attributnamen empfängt, und erstellen Sie dann eine Vergleichsfunktion basierend auf diesem Attributnamen. Hier ist die Definition dieser Funktion:

function createComparisonFunction(propertyName){
return function(object, object){
var a = object[propertyName];
var b = object[propertyName];
if(a < b){
return -;
}else if(a > b){
return ;
}else{
return ;
}
}
}//返回一个根据属性名创建的按升序排列的比较函数
Nach dem Login kopieren

Nachdem die interne Funktion den Parameter propertyName empfangen hat, verwendet sie die eckige Klammernotation, um den Wert der angegebenen Eigenschaft abzurufen.

Die obige Funktion kann wie im folgenden Beispiel verwendet werden.

var data = [{name:"Lily", age: }, {name:"Judy", age: }];
data.sort(createComparisonFunction("name"));
console.log(data[].name);//Judy
data.sort(createComparisonFunction("age"));
console.log(data[].name);//Lily
Nach dem Login kopieren

Der obige Inhalt stellt die verschiedenen Verwendungsmöglichkeiten der vom Editor eingeführten Funktion Sort() dar. Ich hoffe, er wird Ihnen hilfreich sein!

Verwandte Etiketten:
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