【问题标题】:How do I set the properties or fields of the object dynamically in flex如何在flex中动态设置对象的属性或字段
【发布时间】:2023-11-09 14:45:01
【问题描述】:

我有一个包含名称的数组,可以说,

var myArray:Array=new Array("name1","name2","name3");

现在我想通过遍历数组来使用数组值作为对象属性 我的意思是我希望对象具有 name1,name2,name3 作为属性,

var myObject:Object=new object();
for(var i:int=0; i<myArray.length; i++){
myObject[myArray[i]]="something";
}

但这并没有给我所需的结果, 它将对象属性设置为 myArray[i] 即,在这种情况下,我在方括号内给出的任何内容都被视为字符串。我希望输出为,

myObject[name1]="something"
myObject[name2]="something" 
myObject[name3]="something" 

但它给出的输出为

myObject[myArray[i]]="something"

任何想法如何做到这一点?

【问题讨论】:

    标签: actionscript-3 apache-flex flex3


    【解决方案1】:

    不确定我是否完全理解,但我认为您已经实现了目标。

    在调试器中,我看到了:

    这不是你想要的吗?

    我相信你所说的是等价的。

    【讨论】:

    • 你也可以用不同的方式定义动态对象,比如: var myObject:Object = {name1: "something", name2: "something", name3: "something"};然后使用 for() 和 for each() 模式迭代属性名称/值。