JavaScript Array sort() 方法
-
JavaScript Array sort() 方法
sort()方法对数组的项进行排序。排序顺序可以是字母顺序或数字顺序,也可以是升序(向上)或降序(向下)。默认情况下,sort()方法按字母顺序和升序将值排序为字符串。这适用于字符串(“Apple”出现在“Banana”之前)。但是,如果数字被排序为字符串,则“25”大于“100”,因为“2”大于“1”。因此,sort()方法在排序数字时会产生不正确的结果。您可以通过提供“比较功能”来解决此问题(请参阅下面的“参数值”)。注意:此方法更改原始数组。实例:排序数组:
尝试一下var fruits = ["Banana", "Orange", "Apple", "Mango"]; fruits.sort();
-
浏览器支持
项 IE/Edge Chrome FireFox Safari Opera 方法 sort() 支持支持支持支持支持 -
语法
array.sort(compareFunction) -
参数值
参数 描述 compareFunction 可选的。 定义替代排序顺序的函数。 该函数应返回负值,零值或正值,具体取决于参数,如: compare(a,b){return a-b}当sort()方法比较两个值时,它会将值发送到compare函数,并根据返回的(负,零,正)值对值进行排序。 例:比较40和100时,sort()方法调用compare(40,100)。 该函数计算40-100,并返回-60(负值)。 sort函数将40排序为低于100的值。 -
技术细节
项目 描述 返回值: Array对象,其中的项目已排序 JavaScript版本: ECMAScript 1 -
更多例子
按升序对数组中的数字进行排序:
尝试一下var points = [40, 100, 1, 5, 25, 10]; points.sort(function(a, b){return a-b});
按降序对数组中的数字进行排序:
尝试一下var points = [40, 100, 1, 5, 25, 10]; points.sort(function(a, b){return b-a});
获取数组中的最高值:
尝试一下var points = [40, 100, 1, 5, 25, 10]; points.sort(function(a, b){return b-a}); // 按降序对数组中的数字进行排序 // 数组中的第一项(points [0])现在是最高值
获取数组中的最小值:
尝试一下var points = [40, 100, 1, 5, 25, 10]; points.sort(function(a, b){return a-b}); // 按升序对数组中的数字进行排序 // 数组中的第一项(points [0])现在是最低值
按字母顺序对数组排序,然后反转已排序项的顺序(降序):
尝试一下var fruits = ["Banana", "Orange", "Apple", "Mango"]; fruits.sort(); fruits.reverse();