Javascript 如何将变量附加到另一个变量名?

Javascript 如何将变量附加到另一个变量名?,javascript,Javascript,所以我有一个简单的条件: var q1 = document.forms["quizForm"]["q1"].value; 我必须像这样重复5次: var q1 = document.forms["quizForm"]["q1"].value; var q2 = document.forms["quizForm"]["q2"].value; var q3 = document.forms["quizForm"]["q3"].value; var q4 = document.forms["qui

所以我有一个简单的条件:

var q1 = document.forms["quizForm"]["q1"].value;
我必须像这样重复5次:

var q1 = document.forms["quizForm"]["q1"].value;
var q2 = document.forms["quizForm"]["q2"].value;
var q3 = document.forms["quizForm"]["q3"].value;
var q4 = document.forms["quizForm"]["q4"].value;
var q5 = document.forms["quizForm"]["q5"].value;
for (n = 1; n < 5; n++) { 
        var qn = document.forms["quizForm"]["qn"].value;
    }
for (n = 1; n <= 5; n++) { 
        eval('var q' + n + '=document.forms['quizForm']['q' + n + '].value;');
        alert(q1);
    }
但我想用一个简单的循环,如下所示:

var q1 = document.forms["quizForm"]["q1"].value;
var q2 = document.forms["quizForm"]["q2"].value;
var q3 = document.forms["quizForm"]["q3"].value;
var q4 = document.forms["quizForm"]["q4"].value;
var q5 = document.forms["quizForm"]["q5"].value;
for (n = 1; n < 5; n++) { 
        var qn = document.forms["quizForm"]["qn"].value;
    }
for (n = 1; n <= 5; n++) { 
        eval('var q' + n + '=document.forms['quizForm']['q' + n + '].value;');
        alert(q1);
    }
所以我猜qn不起作用了,它将
qn
声明为一个值

我正在尝试实现如下内容:

var q1 = document.forms["quizForm"]["q1"].value;
var q2 = document.forms["quizForm"]["q2"].value;
var q3 = document.forms["quizForm"]["q3"].value;
var q4 = document.forms["quizForm"]["q4"].value;
var q5 = document.forms["quizForm"]["q5"].value;
for (n = 1; n < 5; n++) { 
        var qn = document.forms["quizForm"]["qn"].value;
    }
for (n = 1; n <= 5; n++) { 
        eval('var q' + n + '=document.forms['quizForm']['q' + n + '].value;');
        alert(q1);
    }
for(n=1;n它应该可以工作。
Javascript隐式转换类型。在您的情况下,使用+运算符就足够了

for (n = 1; n < 5; n++) { 
    var qn = document.forms["quizForm"]["q" + n].value;
}
(n=1;n<5;n++)的

var qn=document.forms[“quizForm”][“q”+n].value;
}
顺便说一下,根据您的第一个示例,您的循环应该如下所示

for (var n = 1; n <= 5; n++)

for(var n=1;n您可以在循环内进行验证,并在同一个循环中进行分数计算

var total = 5;
var score = 0;
for (i = 1; i <=n; i++) {
    if(document.forms["quizForm"]["q" + i].value == ""){
        alert("You missed question " + i);
        return false;
    } 
    score += document.forms["quizForm"]["q" + i].value;
 }
var总计=5;
var得分=0;

对于(i=1;i,您可以在循环内检查您的无效问题

function submitAnswers(){
var total = 5;
var score = 0;

for (n = 1; n <= 5; n++) { 
    var qn = document.forms["quizForm"]["q" + n].value;
 //Validation 
if( ! qn){
    alert('You missed question '+n);
    break;
}

}

}
函数submitAnswers(){
var总计=5;
var得分=0;

对于(n=1;n值数组如何?@RGraham的可能重复项不完全相同,它使用数组位置,我需要一个动态变量声明。@成功后Tachi你想要什么?你只需要做分数计算?你能确认成功后将执行什么操作吗?我会帮你更多。@Mitul是的,我只需要我想计算总分,我只是在学习一些教程,并用循环之类的简单方法改进其中的一些内容。谢谢你的帮助:)