1
// content loaders
if (_contentLoaders != null)
{
// iterate through all the content loaders then dispose it
for (var i:int = 0; i < _contentLoaders.length; i++)
{
_contentLoaders[i].dispose();
}
_contentLoaders.splice(0, _contentLoaders.length);
_contentLoaders = null;
}
// text content loaders
if (_textContentLoaders != null)
{
// iterate through all the text content loaders then dispose it
for (var i:int = 0; i < _textContentLoaders.length; i++)
{
_textContentLoaders[i].dispose();
}
_textContentLoaders.splice(0, _textContentLoaders.length);
_textContentLoaders = null;
}
好傢伙,我也碰到過很多次這個問題(事實上,它不應該是一個問題,如果我理解正確的話應該是語法的設計是這樣的方式)。範圍
從上面的代碼,你會看到2個for循環塊,你看到我爲每個塊聲明瞭變量i。我使用Flash v.10.2設置了FlashDevelop來運行此代碼。它提示我錯誤說「重複的變量定義」。
我可以通過在這2個for-loop塊之外聲明變量i來解決這個問題,並且爲它們兩個重用i。但對我自己來說,這並不是那麼幹淨的代碼。 我的問題是
「由limitting 變量的作用域這樣這是動作的意圖 3是那樣的方式?或者它可以 修改可以調了一些選項 編譯器或在這種情況下說口譯員爲 ?「
在此先感謝。
這也是一個想法,但這會增加處理不必要的索引變量的數量。 – haxpor 2011-05-06 02:12:27
您不能重新聲明具有相同名稱的變量,因爲原始函數塊的長度將存在。唯一的選擇是聲明一次並重用它,或更改第二個變量的名稱。 – Chris 2011-05-06 02:15:45
我希望它是本地的每個循環塊。 – haxpor 2011-05-06 02:16:05