以下代码中的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);
*/
答案 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);
两个精灵都被分配了一个唯一的实例名称,因此两个代码示例都可以正常工作。