【问题标题】:Adding multiple categories to ActionScript variables向 ActionScript 变量添加多个类别
【发布时间】:2012-01-18 05:10:27
【问题描述】:

我是一名设计师,试图为 Web 项目修改一些 ActionScript。在定义变量时,我希望它们中的一些具有多个参数/类别(对于我缺乏词汇,我深表歉意)。

例如...

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

];

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

感谢您的帮助!

【问题讨论】:

    标签: flash actionscript-3 actionscript flash-cs4


    【解决方案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]
    }
    

    【讨论】:

    • 那应该是一个数组初始化器:types:["OldProject", "2005Project"](方括号)。
    【解决方案2】:

    一些选项包括:

    //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
    

    【讨论】:

    • 我想你可能只是在那里拉了我的答案:)
    • 大声笑,我重新阅读了 OP 并忘记包括“堆叠”的东西。我会为你 +1,因为你在我之前添加了那部分。
    猜你喜欢
    • 2011-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-08
    • 1970-01-01
    • 1970-01-01
    • 2014-04-12
    • 1970-01-01
    相关资源
    最近更新 更多