不幸的是,在ActionScript中,似乎對Vector類的支持還沒有完全實現。有一些場景需要將Vector轉換爲數組(例如創建ArrayCollection)。我以爲這會做的伎倆:轉換矢量。 <SomeType>來陣列?
var myVector:Vector.<MyType> = new Vector.<MyType>();
var newArray:Array = new Array(myVector);
顯然,這只是創建其中數組的第一個索引包含完整的矢量對象的數組。這是我唯一的選擇:
var newArray:Array = new Array(myVector);
for each(var item:MyType in myVector)
{
newArray.push(item);
}
我覺得這樣會混淆代碼很多,我需要在很多地方做到這一點。 Vector類沒有實現任何類型的接口,所以據我所知我不能創建一個通用函數來轉換爲數組。有沒有辦法做到這一點,而不是每次我想將矢量轉換爲數組時添加這個混亂?
最有可能在這裏已經回答:http://stackoverflow.com/questions/1107809/as3-how-to-convert-a-vector-to-an-array – jpea 2011-03-09 16:59:56