我正在尝试创建一个与下面的代码等效的 for 循环,这样我就不必每次都将其全部输入。
var q1 = document.getElementById("q1").value;
var q2 = document.getElementById("q2").value;
var q3 = document.getElementById("q3").value;
var q4 = document.getElementById("q4").value;
var q5 = document.getElementById("q5").value;
google.script.run.AddRecord(q1, q2, q3, q4, q5);
我特别难以在 i=1, 2, .., 5 的地方声明 qi,这样它就不会认为它只是一个单词或数组。我使用字符串连接尝试了不同的东西,但无法让它工作(参见下面的开始循环)。我觉得我错过了一件导致它遇到问题的小东西。我已经看到了有关此问题的不同问题,但无法让它发挥作用。
for(var i=1; i<=5; ++i){
var "q"+i=document.getElementById("q"+i).value;
}
答案 0 :(得分:2)
您可以为此使用数组。声明一个数组并使用 i 作为索引在数组中插入值。
var markers = [];
for(var i=1; i<=5; ++i){
markers[i] = document.getElementById("q"+i).value;
}
答案 1 :(得分:2)
您可以将值推送到数组中,然后使用 spread operator 将它们传递给 google.script.run.AddRecord
const elements = [];
for (let i = 1; i <= 5; i++) {
elements.push(document.getElementById(`q${i}`).value);
}
google.script.run.AddRecord(...elements);