2010-07-15 42 views
1

我有这个类获得从类的静态属性在ActionScript

package somePackage 
{ 
    public class SomeClass 
    { 
     public static const FOO: SomeClass = new SomeClass("0"); 
     public static const BAR: SomeClass = new SomeClass("1"); 
     } 
} 

我希望能够得到给它的名字的静态属性。

例子:

public static function getProperty(propertyName: String): SomeClass { 
    //don't know what goes here 
} 

var property1:SomeClass = SomeClass.getProperty("FOO"); // property1 == SomeClass.FOO 
var property2:SomeClass = SomeClass.getProperty("BAR"); // property2 == SomeClass.Bar 
+0

为什么你需要写“FOO”而不是FOO? – DHuntrods 2010-07-15 19:41:11

+0

我不是在写它。它写成一个字符串。 – 2010-07-15 19:45:35

回答

3

你可以用方括号这样的:

SomeClass['FOO'] 

或者,如果你希望把它放在一个返回类型对象的方法:

public static function getProperty(propertyName: String):SomeClass { 
    return SomeClass[propertyName] 
}