我是一名设计师,试图为Web项目修改一些ActionScript。在定义变量时,我希望其中一些变量具有多个参数/类别(我为自己缺乏词汇而道歉)。
例如......
var Projects= [
{myName:"Example1",myType:"OldProject",myCopy:"Coming soon."}
// etc
];
如何添加多个参数,例如,myType
可以同时设置为OldProject
和2005Project
?
感谢您的帮助!
答案 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