由于某种原因,我的循环只进行了一次,尽管importedChar.numItems =2
效果项目从1开始而不是0,所以我使用x=1
,这就是我拥有的
for(x=1; x < importedChar.numItems; x++) {
if (importedChar.item(x) instanceof CompItem) {
//Add imported Char to Main Comp
var newObj = null;
var newObj = myComp.layers.add(importedChar.item(x))
//Move Layer under null
newObj.moveAfter(newNull);
//Parent to Null
newObj.parent = newNull;
}
}
如果第一个项目是一个合成它运行正常,但如果它是第二个
则离开循环答案 0 :(得分:3)
您需要使用<=
代替<
才能让它运行两次。
修改:或者for(x=0; x < importedChar.numItems; x++) {
,然后在需要使用x+1
时使用<=
,但在可以避免使用{{1}}的情况下,{{1}}更可取
当您需要访问索引和有意义的值(例如,打印人性化的错误消息)时,通常会出现您希望替代方案的情况
答案 1 :(得分:2)
x = 1, importedChar.numItems =2, x < importedChar.numItems true;
然后x = 2, importedChar.numItems =2, x < importedChar.numItems false;
所以出了循环
我猜这种方式