向ActionScript变量添加多个类别

时间:2011-12-12 05:48:41

标签: flash actionscript-3 actionscript flash-cs4

我是一名设计师,试图为Web项目修改一些ActionScript。在定义变量时,我希望其中一些变量具有多个参数/类别(我为自己缺乏词汇而道歉)。

例如......

var Projects= [
{myName:"Example1",myType:"OldProject",myCopy:"Coming soon."}    
// etc

];

如何添加多个参数,例如,myType可以同时设置为OldProject2005Project

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

您可以将myType参数设置为字符串数组,而不只是一个。

然后您可以在循环中访问它们以查找所有types值。

类似的东西:

var Projects= [
{myName:"Example1",types:["OldProject", "2005Project"],myCopy:"Coming soon."}
];

for (int i = 0; i < Projects[0].types.length; i++) {
    // access them with Projects[0].types[i]
}

答案 1 :(得分:0)

部分选项包括:

//1. JSON like object option
var projects:Object = {myName:"Example1",myType:"OldProject",myCopy:"Coming soon."};
trace(projects.myName + projects.myType + "etc..."); //Access it

//2. Dicitonary option
import flash.utils.Dictionary;
var d:Dictionary = new Dictionary();
d["myName"] = "Example1"; //Set values like this
trace(d["myName"]); //Access them like this

还有一个关联数组,一个自定义类等......但是我建议你选择1,特别是如果你的设计师比程序员更多。

如果您想要“堆栈属性,您可以将myType设置为数组或其他对象,例如:

obj.myType = {one:"OldProject", two: "2005Project"};
trace(obj.myType.one + obj.myType.two);

obj.myType = new Array();
obj.myType[0] = "OldProject";
obj.myType[1] = "2005Project";
trace(obj.myType[0], obj.myType[1]); //Access them