我有拥有一些常数和将收到对象文本(关联阵列)配有一些像这样的数据的类:对象常量的常量作为键(在密钥值对)
var ConfigObj:Config = new Config({
"Some" : 10,
"Other" : 3,
"Another" : 5
});
类看起来是这样的:
public dynamic class Config
{
static public const SomeProperty:String = "Some";
static public const OtherProperty:String = "OtherProperty";
static public const AnotherProperty:String = "AnotherProperty";
public function Config(settings:Object)
{
// Doing some stuff here
}
}
的问题是,我怎么能传递常量,键这样的:
var ConfigObj:Config = new Config({
Config.SomeProperty : 10,
Config.OtherProperty : 3,
Config.AnotherProperty : 5
});
此外,如果可能,我想保持内联。
var MyObj:MyClass = new MyClass({x:1, y:2, z:3});
是,对我来说,远不如:
var Temp:Object = new Object();
Temp.x = 1; // Or Temp[x] = 1;
Temp.y = 2; // Or Temp[y] = 2;
Temp.z = 3; // Or Temp[z] = 3;
var MyObj:MyClass = new MyClass(Temp);
其实你的第一个例子将编译没有双引号。它们是可选的(只要密钥遵循标识符命名规则,就像你的那样)。不幸的是,{}语法不支持这种“替代”。 – 2011-04-04 21:02:27
我不确定,但我想我明白你想要做什么(有点)。你可能想看看Flash的Dictionary类;它可能会提供您正在寻找的键值对。 – 2011-04-04 22:13:56