0 apache-flex flash dynamic actionscript-3
我有一个动态类,它在运行时之前有一个正常声明的数组.
通常,您可以动态访问变量,无论是否已声明变量
myClass["variable"] = 4;
Run Code Online (Sandbox Code Playgroud)
但是,尝试用数组来做这个,就像这样
myClass["array[0]"] = 4;
Run Code Online (Sandbox Code Playgroud)
不会将4存储到数组的第一个元素中,而是将其存储到变量"array [0]"中.
例如,在执行前面的代码之后,
trace(myClass.array[0]);
Run Code Online (Sandbox Code Playgroud)
痕迹未定义,在哪里
trace(myClass["array[0]"]);
Run Code Online (Sandbox Code Playgroud)
痕迹4.
反正我是否可以动态访问数组的元素?
不要将它视为评估String.它仍然只是一系列属性.
所以你问题的实际答案是:
var o:Object = {};
o["array"] = []; //we do have to insantiate the array first
o["array"][0] = 4;
Run Code Online (Sandbox Code Playgroud)