使用 for 循环更快地分配包含 jquery 选择器的多个变量

Assigning multiple variables containing jquery selectors faster with for loop

如何减少下面的代码?我想在更少的行中分配多个变量,也许 for 循环会有所帮助。

let a1 = $('[name="answer[1]"]:checked').val(),
    a2 = $('[name="answer[2]"]:checked').val(),
    a3 = $('[name="answer[3]"]:checked').val(),
    a4 = $('[name="answer[4]"]:checked').val(),
    a5 = $('[name="answer[5]"]:checked').val(),
    a6 = $('[name="answer[6]"]:checked').val(),
    a7 = $('[name="answer[7]"]:checked').val();

我试过但没有用的:

var i;
for (i = 1; i < 8; i++) {
    let a[i] = $('[name="answer['+i+']"]:checked').val();
}

我能想到的就是这个

var i;
for (i = 1; i < 8; i++) { 
  let a[i] = $('[name="answer['+i+']"]:checked').val();
}
  for (var i = 0; i < 8; ++i) {
      a[i] = "whatever";
  }

发布于 JavaScript: Dynamically Creating Variables for Loops

在浏览器环境中,您可以通过设置 window 对象的 属性 来分配变量:

for (let i = 0; i < 8; i++) {
  window["a"+i] = "something "+i;
}

console.log(a2, a3);

至于你的代码,使用这个:

window["a"+i] = $('[name="answer['+i+']"]:checked').val();

for循环中