1.sort:主要對簡單資料結構的數組進行排序。預設為按照unicode值進行排序。
比如
var myArray:Array = [42,1,100,56];
myArray.sort();
trace(myArray);
輸出結果為:1,100,42,56
2.想要對實作特定的排序可以使用提供的排序類型。
· Array.CASEINSENSITIVE:不區分大小寫
· Array.DESCENDING:降序排序
· Array.UNIQUESORT:如果元素都是唯一,不存在重複就進行排序,否則不排序
· Array.RETURNINDEXEDARRAY:将排序後的元素的新順序傳回,但不修改原來的數組
· Array.NUMERIC:按照數字大小排序
如:
var myArray:Array = [42,1,100,56];
myArray.sort(Array.NUMERIC | Array.DESCENDING);
trace(myArray);
輸出結果為100,56,42,1
3.可以自定義排序方法。
如
var myArray:Array = [1,100,99,42];
trace(myArray.sort(compare));//compare可以随意,隻是個函數名字。
function compare(a,b)//參數名可以随意,但必須是兩個參數
{
if(a>=b)
{
return 1;//傳回1,第一個元素放到後面
}
else
{
return -1://傳回-1,第一個元素放到前面,若傳回0則兩個元素相等。
}
}
結果:1,42,99,100
4.sortOn:對複雜資料結構的數組排序。
如:
var player1:Object = ["name":"Jack","age":6,"gender":undefined];
var player2:Object = ["name":"Anna","age":23,"gender":"female"];
var player3:Object = ["name":"Paul","age":32,"gender":"male"];
var tournament:Array = [player1,player2,player3];
tournament.sortOn("age",Array.NUMERIC | Array.DESCENDING);
for(var i:uint=0;i<tournament.length;i++)
{
trace(tournament[i].name);
}
輸出結果, Paul,Anna,6
5.reverse:将現有順序逆向
轉載于:https://blog.51cto.com/sincerecorner/677073