说明
sort() 方法对数组进行排序,默认从小到大排序
例子
var arr = [40, 100, 1, 5, 25, 10];
arr.sort();//按照从小到大排序
var arr2 = ["Banana", "Orange", "Apple", "Mango"];
arr2.sort();//按照字母的ascii码排序
回调函数
可以通过回调函数,指定排序顺序,如:倒序排序(从大到小)
function comp(a, b){
console.log(a,"---",b)
if(a>=b){
return -1
}else{
return 1
}
}
arr.sort(comp);
形参: 方法有两个参数 a 和 b,分别表示待比较的两个元素。
注意:在数组中,a 表示 后一个元素,b 表示 前一个元素,如下图:
返回值:方法返回值,有三种情况:
- 正数,2个元素的位置不改变
- 负数,此时交换这2个元素的位置
- 0,表示 2个元素相等,2个元素的位置不改变
返回值表示 排序规则
排序规则-正序(从小到大)
- o1(后一个元素)大于 o2(前一个元素),返回 正数
- o1(后一个元素)小于 o2(前一个元素),返回 负数,会交换这2个元素的位置
排序规则-倒序(从大到小)
- o2(前一个元素)大于 o1(后一个元素),返回 正数
- o2(前一个元素)小于 o1(后一个元素),返回 负数,会交换这2个元素的位置
例子-int 数组
从大到小排序,即:正序
var arr = [40, 100, 1, 5, 25, 10];
arr.sort(
function(a, b){
console.log(a,"---",b)
if(a>=b){
return -1
}else{
return 1
}
}
);

