2011-10-03 81 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 –

相關問題