您的位置:首页 > Web前端 > JavaScript

javascript中的排序sort()函数

2012-12-28 19:10 302 查看
sort()函数会自动调动toString()方法字符串会数组参数,所以sort()方法可以接收一个比较函数做为参数。

比较函数接收两个参数,如果第一个参数应该在第二个参数前面则返回负数,如果两个参数相等则返回0,如果第二个参数位于第一个参数前面则返回正数。以下是一个简单地比较函数:

function compare(value1, value2) {
if(value1 < value2) {
return -1;
} else if(value1 == value2) {
return 0;
} else {
return 1;
}
}


var arr = new Array(1,2,78,34,54,0,4);
arr.sort(compare);
alert(arr);//按从小到大排序

对于数值类型或者其valueOf()方法会返回数值类型的对象类型,可以使用一个更简单地比较函数。这个函数只要用第一个值减去第二个值即可。

function compare(value1, value2) {
return value1 - value2;
}

由于比较函数通过返回一个小于零、等于零或大于零的值来影响排序结果,因此减法操作就可以适当的处理所有这些情况。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: