2012-07-07 92 views
2

我想在Flash Professional CS6中創建一個引用變量的簡單AS3代碼。參考變量AS3

例:

var1:int = 1; 
varref = "var1"; (this is the "reference" variable, but ofcourse this is not how it's done in as3) 

if (var1 == 1) 
{ 
varref = 50 
} 

如果運行時,它會嘗試進行從變量varref這是目前「VAR1」成一個int字符串「1' 我希望它參考這個變量不是它自己的變量

一個簡單的例子說明如何做到這一點會很棒(從我所知道的可能需要一個對象開始,所以這種情況的一個簡單的對象例子會很棒)

回答

0

我使用這個類來創建引用: https://github.com/turbosqel/as3SupportLib/blob/master/as3SupportLib/src/turbosqel/data/LVar.as

它使用起來非常簡單,如:

public var item:String = "some str"; 
{...} 
var ref:LVar = new LVar (this,"item"); 
trace(ref.value);// return : "some str" 
trace("my ref is " + ref); // return : my ref is some str 
// You can always change this on runtime : 
item = "new value"; 
trace(ref.value); // return : new value 

同樣的事情您可以使用任何其他數據類型。

0

在AS3中喲你可以引用基本類型(只有類和對象)。

你可以達到你想要的東西做類似的東西:

var var1:Object = { value:1 }; 
var varRef:Object = var1; 

if(var1.value == 1) { 
    varRef.value = 50; 
} 

trace(varRef.value); // outputs 50; 
trace(var1.value); // outputs 50; 
+0

很好的回答,謝謝克里斯! – user1508405 2012-07-07 15:33:29