关于Array.sort()的运行原理


var array:Array = new Array();
for (var i:int=0; i<100; i++) {
    array[i] 
= i;

}
array.sort (randomSort);
trace (array);
function randomSort (a:Object,b:Object):Number {
    
    
return Math.random()*20 - 10;
}

 randomSort返回的值如果大于0..则b的索引减1..再与它前面的值比..如果返回值仍大于0..则再减1..直接索引为0或者返回值为负数...如果返回值为负数..则索引不变..

此方法在内部比较完后才返回..不是实时更新数组..

posted @ 2009-04-09 12:09  大頭  阅读(733)  评论(0编辑  收藏  举报