sort()方法是用来对数组的元素进行排序。
字符排序:
var arr = ["china","american","russian","germay"];
document.write("排序之后的数组:" + arr.sort() + "<br />");
//排序之后的数组:american,china,germay,russian
数值排序:
var arr2 = [2,11,123,1234,34,45,56,78,89,987]
document.write("排序之后的数组:" + arr2.sort() + "<br />");
//排序之后的数组:11,123,1234,2,34,45,56,78,89,987
不管是字符、还是数值都是按索引来排序的,字符如:a,b,c,d,e,f......, 数值索引看第一位。
比较函数:
若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
若 a 等于 b,则返回 0。
若 a 大于 b,则返回一个大于 0 的值
总之 a - b 从小到大 b - a 从大到小
var arr2 = [2,11,123,1234,34,45,56,78,89,987]
function sortNum(a,b){
return a - b
}
document.write(arr2.sort(sortNum) + "<br />")
//2,11,34,45,56,78,89,123,987,1234
也可以用下面这个例子方法解决
var arr = [1,15,23,11,55,22,88,49]
arr.sort(function(a,b){
if(a>b){
return 1
}else if(a==b){
return 0
}else{
return -1
}
})
document.write(arr)
返回: