日期:2014-05-16  浏览次数:20371 次

myArrray.sort(function(a,b){return a-b})是什么
其中function(a,b){return a-b}是什么意思

------解决方案--------------------
重写了数组的 sort() 方法 
<script>
var myArrray = new Array(1,3,5,0);
var tt = myArrray.sort(function(a,b){return a-b});
//alert(myArrray.sort()); //0,1,3,5
alert(tt); //0,1,3,5
</script>
二者返回的结果相同
------解决方案--------------------
sort 默认是按 asc 码排列的

<script>
var myArrray = new Array(1,3,5,0,55,6);
var tt = myArrray.sort(function(a,b){return a-b});
//alert(myArrray.sort()); //0,1,3,5,55,6
alert(tt); //0,1,3,5,6,55
</script>
------解决方案--------------------
其实这个函数相当于一个委托(或许说谓词函数更为贴切一些),因为要对数组排序,必然要涉及到两个数组成员的比较,这个函数为你提供一种选择,以改变默认的大小比较规则,排序结果根据这个规则进行比较(函数返回值小于0认为是第一个元素小于第二个元素,等于0是两个元素相等,大于0是第一个元素大于第二个元素)。简单的改变这个函数,你就可以实现倒序排序。也可以对一个具有多个属性的对象进行排序。