actionscript 3.0在for循环中创建精灵实例

时间:2014-11-16 00:13:00

标签: actionscript-3

以下代码中的for循环有效(将两个影片剪辑实例放在舞台上),但它是如何工作的?是不是它创建了多个具有相同名称的实例?如果我将代码拉出循环,如注释掉的部分所示,那么我会得到1151错误消息,我预期会发生命名空间冲突。

for (var j=0; j<2; j++) {
    var mascot:Mascot = new Mascot();
    mascot.x = 150*j + 100;
    mascot.y = 100;
    addChild(mascot);
}
/*
var mascot:Mascot = new Mascot();
mascot.x = 100;
mascot.y = 300;
addChild(mascot);

var mascot:Mascot = new Mascot();
mascot.x = 250;
mascot.y = 300;
addChild(mascot);
*/

1 个答案:

答案 0 :(得分:0)

不使用循环时出现的错误与实例名称无关。

如果没有循环,您将尝试创建具有相同名称的2个变量,这是编译错误。

将其更改为以下内容即可。

var mascot:Mascot = new Mascot();
mascot.x = 100;
mascot.y = 300;
addChild(mascot);

mascot = new Mascot();
mascot.x = 250;
mascot.y = 300;
addChild(mascot);

两个精灵都被分配了一个唯一的实例名称,因此两个代码示例都可以正常工作。