2011-10-31 255 views
0

我有一些變量A1到A14和另一組變量Q1至Q14,而我試圖for循環做了這樣的for循環(循環變量名)

for(var i:uint = 1; i < 15; i++) 
{ 
if (this("a"+i).x== this("q"+i).x) 
{points= points+1 } 
else 
{ 
this("q"+i.visible=false; 
// shows the good answer 
} 
} 

請幫助:)

+0

什麼你認爲這條線......這個(「q」+ i.visible = false; – Bhavesh

回答

1

對象的屬性可以通過方括號訪問,類似於數組中的索引。 每個屬性名稱(變量名稱)實際上都是一個變量鍵。 還建議使用Object.hasOwnProptery(propertyName:String)方法檢查對象實際上是否具有該屬性。

http://help.adobe.com/en_US/AS2LCR/Flash_10.0/help.html?content=00001424.html

例子:

for(var i:uint = 1; i < 15; i++){ 
    if (this["a"+i].x== this["q"+i].x){ 
     points= points+1; 
    } 
    else{ 
     this["q"+i].visible=false; 
     // shows the good answer 
    } 
} 

我沒有檢查,但它可能是明智的使用而不是單位和toString號碼檢索創建變量名時,它的字符串值

+1

'uint'在這種情況下罰款(實際上更好)。 –