我看到我的同事经常使用这种可怕的语法:
var mc1: MovieClip;
var mc2: MovieClip;
var mc3: MovieClip;
var mc4: MovieClip;
var mc5: MovieClip;
for (var i:int = 1; i <= 5; i++) {
addChild(this["mc" + i]); // UURRGGHHH
TweenLite.to(this["mc"+i], 1, {alpha: 0}); // FNNNGGGGGHHHH
}
因为我是一个专横的草皮,我正在列出他们应该使用数组进行迭代的原因列表,而不是令人讨厌的方括号语法。我知道使用这种语法是错误的,但我想不出足够的令人信服的理由,为什么他们应该放弃它。
请告诉我一些事实。答案 0 :(得分:8)
for
循环的限制。答案 1 :(得分:6)
型的安全性。
方括号语法不会产生合适的类型,因此编译器可以在编译时检查问题。我对那些因类型问题引起的运行时异常来找我的人毫不留情。
说真的,AS3中的类型系统是有原因的。用它。不要想办法解决它。它可以防止出现问题。
答案 2 :(得分:4)
我会在这里与你争论,并说你不应该使用数组,而是向量。
答案 3 :(得分:0)
事实:我今天下午只是采用了类似的方式。
但是,以下方式可能会遇到'他们'的预期:
var mcs:Array = [mc1,mc2,mc3,mc4,mc5];
for(var i:int = 1; i&lt; = mcs.length; i ++)
{
的addChild(MCS [I]);
TweenLite.to(mcs [i],1,{alpha:0});
}