在我的代碼我有幾個在主時間軸循環看起來像這樣簡單For循環不工作在CS6上?
for (i = 0; i<2*speedY; i++)
{
code
}
我做這個確切語法很多次,沒有出現過問題,但是當我這樣做是它給了我錯誤,我是未定義的。然後,我嘗試了與var i:int相同的循環:但現在它只是給了我一個命名空間錯誤。我在這裏做錯了什麼?
在我的代碼我有幾個在主時間軸循環看起來像這樣簡單For循環不工作在CS6上?
for (i = 0; i<2*speedY; i++)
{
code
}
我做這個確切語法很多次,沒有出現過問題,但是當我這樣做是它給了我錯誤,我是未定義的。然後,我嘗試了與var i:int相同的循環:但現在它只是給了我一個命名空間錯誤。我在這裏做錯了什麼?
如果你只需要在循環本身的變量i
,不需要超出環路範圍的變量,你也可以在迴路參數中聲明它:
for(var i:int = 0; i < 5; i++) {
trace(i);
}
在性能方面它是一線之差,但它通常是一個很好的做法,只有在他們將要使用的範圍內聲明的變量。
要避免出現undefined
錯誤,您必須定義變量i
,但也要避免出現namespace
錯誤,您應該這樣做一次。所以,你可以是這樣做的:
var i:int;
// 1st for loop
for(i = 0; i < 5; i++){
trace('1 : '+i);
}
// 2nd for loop
for(i = 5; i > 0; i--){
trace('2 : ' + i);
}
那麼這是正確的答案,雖然我再次測試它,它的工作原理(沒有定義我)這是奇怪的,但無論如何感謝。 - 2小時前提醒 – Trows