2017-03-08 33 views
0

我想知道如何引用數組中的長變量範圍。請參閱數組中的長變量

我有一個名爲Check1,Check2,Check3的字段,最多爲60.我想參考Check1-Check60的範圍。

//Do I have to mention ALL the 60 fields here? 
var fieldsToValidate = ["Check1", "Check2", "Check3", "Check4", "Check5", "Check6", "Check7"]; 

有沒有更簡潔的方法來寫這個?

編輯:

忘了提我使用的JavaScript Acrobat中,這裏的片段:

//Do I have to mention ALL the 60 fields here? 
 
var fieldsToValidate = ["Check1", "Check2", "Check3", "Check4", "Check5", "Check6", "Check7"]; //etc. 
 
var emptyFields = []; 
 
for (var i in fieldsToValidate) { 
 
    var f = this.getField(fieldsToValidate[i]); 
 
    if (f.valueAsString==f.defaultValue) { 
 
     emptyFields.push(f.name); 
 
    } 
 
} 
 
    
 
if (emptyFields.length>0) { 
 
    app.alert("Error! You must fill in all required Fields:\n" + emptyFields.join("\n")); 
 
} else { 
 
    this.getField("Signature1").display = display.visible; 
 
}

+0

當你說你要'refer'每個數組中的元素,你是什麼意思?你在做任何類型的驗證?如果是這樣,你的目標是什麼? –

+0

爲了引用一個數組的範圍,你應該簡單地把它分割成「fieldsToValidate.slice(0,60)」,它將返回一個淺的'fieldsToValidate'數組,它有一部分從0開始(包含)到60(獨家)。 – Redu

回答

0

如果所有的領域都是單純的喜歡Check[n]其中n是遞增1.您可以執行以下操作

var fieldsToValidate = [] 
 

 
for (let i = 1; i <= 60; i++) { 
 
    fieldsToValidate.push("Check" + i); 
 
} 
 

 
console.log(fieldsToValidate);

0

使用發電機:

console.log([...function*(n) { 
 
    for (let i = 0; i < n; i++) yield `Check${i + 1}`; 
 
}(60)]);

0

此方法適用於我,謝謝!

var fieldsToValidate = [] 
 

 
for (let i = 1; i <= 60; i++) { 
 
    fieldsToValidate.push("Check" + i); 
 
} 
 

 
console.log(fieldsToValidate);