如何动态地将实例化的MC推入数组?

时间:2013-06-03 22:52:29

标签: actionscript-3

我真的被困住了。我有5个MC在某个时间从一个阵列拼接而来。在同一个函数中,我想将另一个动画片段推送到另一个数组中。这两个数组包含代表正确或错误答案的mc。因此,当一个问题得到正确答案时,问题可视化会改变。 这个函数包含一个递增变量,因为我希望用户可以推送mc,并且当时推送一个mc。事情是我似乎无法正确引用它们。 我试过了

pQuestSum = this[pQuest + pQuestNumber];

pQuestSum = this[pQuest] + pQuestNumber;

几乎我想象的一切都会起作用......但问题是我没有尝试过

正确的事。

当我追踪pQuestSum(这将是引用)时,我得到一个错误,说这不是一个数字。

这是5个名字中的一个,名字来自1-5:

var passedquest1:PassedQuest = new PassedQuest();

这是我尝试构建

引用的变种
var pQuest = "passedquest";
var pQuestNumber = 1;
var pQuestSum;
var questCorrArray:Array = [];

if(event.target.hitTestObject(questArray[ix])){
    removeChild(questArray[ix]);
    questArray.splice(ix,1);
    pQuestNumber ++;
    pQuestSum = this[pQuest] + pQuestNumber;
    trace("pQuestSum"); // NaN
    questCorrArray.push(pQuestSum);
    //trace(questArray.length);
    pointsIncreased = false;
        questPoints = 0;
    }

当引用包含字符串和数字时,如何引用现有的动画片段?希望我让自己有点明确:)

1 个答案:

答案 0 :(得分:1)

如果您的时间轴上有一个名为“passedquest1”的对象实例(作为示例),那么您可以这样访问它:

var myObj = this["passedquest" + 1];

或者,

var pQuest = "passedquest";
var pQuestNumber = 1;
var myObj = this[pQuest+ pQuestNumber.toString()];

执行此操作时:pQuestSum = this[pQuest] + pQuestNumber;,您正在尝试将数字添加到对象(this[pQuest]),除非您有名为“passedquest”的数字/ int var,否则将导致NaN。< / p>