2011-10-03 55 views
4

使用扩展脚本将变量推送到数组中它基本上是javascript。任何想法我做错了什么?将变量添加到循环中的数组

if (app.documents.length > 0) { 

    for (i = 0; i< app.activeDocument.textFrames.length; i++) { 
     var allSizes = []; //set up empty array 

     textArtRange = app.activeDocument.textFrames[i].textRange; 
     var fontName = textFonts.getByName("Nobile"); 
     alert (fontName); 
     textArtRange.characterAttributes.textFont = fontName; 
     var fontSizes = textArtRange.characterAttributes.size; 

     allSizes.push(fontSizes) 
     alert (fontSizes); 

    } 
     alert (allSizes); 
} 

allSizes的警报只返回单个值,而不是数组。

回答

8

移动的allSizes = []定义外循环。

目前,你在“重置”的allSizes在每个循环的价值。

3

您正在设置for循环内的空数组。它每次都重置它。移动它上面的for循环:

var allSizes = []; //set up empty array 
for (i = 0; i< app.activeDocument.textFrames.length; i++) { 
    ..... 
+0

哇,那是完全的。多么小动作,哈!我不相信我没有看到。谢谢! – Lukasz

+1

@卢卡斯:你需要接受这个问题的答案。通过点击最有帮助的答案旁边的绿色复选标记来执行此操作。 http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work –

相关问题