as3中for..in 語句和for each..in 語句


for..in 語句遍曆物件的動態屬性或陣列中的元素,並對每個屬性或元素執行 statement。物件屬性不按任何特定的順序保存,因此屬性看似以隨機的順序出現。固定屬性,例如在類中定義的變數和方法,不能由 for..in 語句來枚舉。若要獲得固定屬性列表,請使用 flash.utils 包中的 describeType() 函數。下面的示例使用 for..in 遍曆物件的屬性:


  var myObject:Object = {firstName:"Tara", age:27, city:"San Francisco"}; 
 for (var prop in myObject)
  {
 trace("myObject."+prop+" = "+myObject[prop]); 
 } 

for each..in 語句遍曆集合的專案,並對每個專案執行 statement。for each..in 語句作為 E4X 語言擴展的一部分引入,不僅可以用於 XML 物件,而且可以用於物件和陣列。for each..in 語句僅遍曆物件的動態屬性,而不是固定屬性。固定屬性是指定義為類定義的一部分的屬性。若要使用具有用戶自定義類的實例的 for each..in 語句,則必須聲明具有 dynamic 屬性的類。 與 for..in 語句不同,for each..in 語句將遍曆物件屬性的值,而不是屬性的名稱。
下例使用 for each..in 遍曆物件的屬性具有的值:

var myObject:Object = {firstName:"Tara", age:27, city:"San Francisco"}; 
for each (var item in myObject) 

 trace(item); 
 }

arrow
arrow
    全站熱搜

    聆六禽 發表在 痞客邦 留言(0) 人氣()