2014-01-30 28 views
1

我最初想做的事是這樣的:ActionScript 3 - 如何設置空的顯示對象變量?

if (myTargetName == 'a') { 
    var myOtherTargetName:String = "b"; 
    var myOtherTarget:DisplayObject = getChildByName(myOtherTargetName); 
} 


if (myTargetName == 'c') { 
    var myOtherTargetName:String = "d"; 
    var myOtherTarget:DisplayObject = getChildByName(myOtherTargetName); 
} 

,你可以看到,我得到一個「重複的變量定義」錯誤,因爲IM聲明變量的兩倍。我的解決方案,我認爲將是剛剛宣佈這些變量的if語句之外,並更改語句中的變量,像這樣:

var myOtherTargetName:String = "" 
var myOtherTarget:DisplayObject = None; 
if (myTargetName == 'a') { 
    myOtherTargetName = "b"; 
    myOtherTarget = getChildByName(myOtherTargetName); 
} 


if (myTargetName == 'c') { 
    myOtherTargetName = "d"; 
    myOtherTarget = getChildByName(myOtherTargetName); 
} 

這給出了一個錯誤說「未定義的屬性沒有訪問」。現在,我不想設定

myOtherTarget:DisplayObject 

到實際已顯示對象是在舞臺上,只是還沒有,我想將它設置爲對象舞臺上的if語句裏面。有沒有辦法設置

myOtherTarget:DisplayObject 

什麼都沒有?

+2

試試這個:'VAR myOtherTarget:的DisplayObject = NULL;',或者乾脆'VAR myOtherTarget:的DisplayObject ;' – Cherniv

+0

@Cherniv工作,謝謝。你可以把它作爲答案 – user2817200

回答

0

這是很容易,複製+粘貼:

var myOtherTarget:DisplayObject = null; 

或者乾脆:

var myOtherTarget:DisplayObject;