如果我有一个数组,我可以通过执行以下操作来设置密钥:
var example:Array = new Array();
example[20] = "500,45";
example[324] = "432,23";
如果我想对对象做一些事情,我将如何实现这一目标?
我尝试了以下内容:
var example:Object = [{x:500, y:45}, {x:432, y:23}]; // Works but keys are 0 and 1
var example:Object = [20: {x:500, y:45}, 324: {x:432, y:23}]; // Compile errors
var example:Object = [20]: {x:500, y:45}, [324]: {x:432, y:23}; // Compile errors
var example:Object = [20] {x:500, y:45}, [324] {x:432, y:23}; // Compile errors
有没有很好的方法来实现这个目标?
我知道我可以这样做:
var example:Object = {id20 : {x:500, y:45}, id324: {x:432, y:23} };
但它不适合我。
答案 0 :(得分:2)
[]
符号与执行new Array()
的含义相同,所以当您这样做时:
var example:Object = [{x:500, y:45}, {x:432, y:23}];
实际上,您创建的数组包含两个对象{x:500, y:45}
和{x:432, y:23}
的元素。
如果要使用键20和324创建对象,请使用与{}
new Object()
表示法
所以你的例子变成了=>
var example:Object = {20: {x:500, y:45}, 324: {x:432, y:23}};
您可以使用Object
而不是Array
执行与第一个示例相同的操作:
var example:Object = new Object();
example[20] = "500,45";
example[324] = "432,23";