在循环中将变量添加到数组

Luk*_*asz 5 javascript arrays variables loops extendscript

使用extend脚本将变量推送到数组中它基本上是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);
}
Run Code Online (Sandbox Code Playgroud)

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

Rob*_*b W 11

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

目前,您正在"重置" allSizes每个循环的值.


Chr*_*rle 6

您正在for循环中设置空数组。每次都在重置。将其移至for循环上方:

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