English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

JavaScript 数组 sort() 方法

 JavaScript Array-Objekt

sort()方法对数组的元素进行排序(基于第一个字符)并返回数组。

默认情况下,sort()方法按升序/按字典顺序对值排序。

这适用于字符串(“ December”先于“ February”)。

但是,如果数字按字符串排序,则“35”大于“150”,因为“3”大于“1”。

但是您可以通过提供“compare”函数来更改排序算法。

注意: sort()方法更改原始数组。

语法:

array.sort(compareFunction)
var months = [#39;March#39;, #39;Jan#39;, #39;Feb#39;, #39;Dec#39;];
months.sort();
Testen Sie heraus‹/›

浏览器兼容性

表格中的数字指定了完全支持sort()方法的第一个浏览器版本:

Method
sort()115.5

参数值

参数描述
compareFunction(可选)指定定义排序顺序的函数。如果省略,则按字典顺序对数组进行排序。

技术细节

返回值:排序后的数组
JavaScript-Version:ECMAScript 1

Mehr Beispiele

Sortieren Sie die Zahlen im Array in aufsteigender Reihenfolge:

var nums = [5, 1, 2, 7, 3, 6, 4];
nums.sort();
Testen Sie heraus‹/›

sort()Standardmäßig wird die Nummerierungsreihenfolge der Nummerierungsarrays nicht beachtet. Stattdessen wird nur der erste Buchstabe der Nummer überprüft:

var nums = [5, 1, 2, 17, 13, 6, 34];
nums.sort();
Testen Sie heraus‹/›

Um die Zahlen korrekt zu sortieren, können Sie eine Vergleichsfunktion als Parameter erstellen:

var nums = [5, 1, 2, 17, 13, 6, 34];
nums.sort(function(a, b) { return a - b});
Testen Sie heraus‹/›

Sortieren Sie die Zahlen im Array in absteigender Reihenfolge:

var nums = [5, 1, 2, 17, 13, 6, 34];
nums.sort(function(a, b) { return b - a});
Testen Sie heraus‹/›

Erhalten Sie das kleinste und größte Element des Arrays:

function myFunc() {
var nums = [5, 1, 2, 7, 3, 6, 4];
nums.sort(); // Array-Sortierung
var low = nums[0];   // Der Wert des ersten Index ist der kleinste
var high = nums[nums.length-1];  // Der letzte Indexwert ist der größte
}
Testen Sie heraus‹/›

 JavaScript Array-Objekt