2011-10-04 41 views
2

我不完全理解在這個例子中類型轉換的這兩種方法之間的優勢/劣勢:AS3爲VS級()

for each(var i:DisplayObject in _display) 
{ 
    trace(i as Sprite); 
    trace(Sprite(i)); 
} 

有什麼建議解決這個呢?我一直用Class()包裝,就像後面的例子一樣,但as有時候讀起來更容易。

回答

0

我總是像使用,因爲當你使用類(參考)幾類有意想不到的效果。例如

var arr:Array = [1, 2, 3]; 

var arr2:Array = Array(arr); 

ARR2現在是[1,2,3]

這是相當明顯的,當ARR和ARR2被定義在那裏一起,但是當ARR定義別的地方,你不」 t知道它是否包含數組,您可以使用Array(arr)語法獲得一個bug。