有没有办法增加(递增 1)并迭代变量标识符的特定字母?



我有一系列具有相似标识符的变量。这些变量标识符增加 1。例如:

var q1 = "5";
var q2 = "12";
var q3 = "98";
.
.
var q10 = "1001";

在我的页面上,我有一个用于用户输入的文本区域(id="testbox"(,其定义为:

var res = document.getElementById("testbox").value;

本质上,文本区域具有多个正确值。这些是分配给 var q1 的所有值...var q10. 我编写了以下代码(见下文(,它工作得很好,但我想知道是否有更有效的方法。

if  ( res == q1 || res == q2 || res == q3 || res == q4 || res == q5 || res == q6 || res == q7 || res == q8 || res == q9 || res == q10 )
{
//something good happens        
}
else {
//something bad happens     
}

有没有办法创建我的变量标识符的迭代并将其检查到我的用户输入。有没有办法将我的标识符的特定值增加 1 并停止在 10(var q1...var q10(并将该条件测试到变量"res"。

您可以使用值创建一个数组,而不是将它们存储在变量中,然后您可以迭代数组以查看 res 是否与任何条目匹配。 设 arr = ["5",..."1001"];

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
let res = 'q6'
let num = parseInt(res.slice(1))
arr.includes(num)  // would return true

尝试将所有选项放在一个数组中

最新更新