我知道有很多关于是否可以在jQuery中使用变量的问题。
其中一个问题是:click here。
我尝试使用答案,但我不知道如何在我的情况下使用它。
var numberofquestions = 10;
var dataString = "";
for ( var i=1; i<=numberofquestions; i++ ) {
/* ------ first part ------- */
if (i==1) {
dataString = dataString + "q1=" + question1 + "&";
} /* ------ end first part ------- */
else if (i == numberofquestions) {
questionValue = "question" + numberofquestions;
qValue = "q" + numberofquestions;
dataString = dataString + qValue + "=" + questionValue;
console.log(dataString);
} else {
questionValue = question + i;
dataString = dataString + "q" + i + "=" + questionValue + "&";
}
}
循环将运行10次,每次需要将一部分添加到现有的dataString中。
它需要做的是创建这个字符串:
q1=(value of var question1)&q2=(value of var question2) and so forth.
vars question1, question2, ... question10
都有一个数字。
第一部分工作,它在控制台日志中输出q1 = 5,然后,在一个随机字符串后。输出字符串(总字符串)如下所示:
q1=5&q2=NaN&q3=NaN&q4=NaN&q5=NaN&q6=NaN&q7=NaN&q8=NaN&q9=NaN&q10=question10
有人知道我做错了吗?
答案 0 :(得分:3)
你应该使用一个数组。没有&#34;变量变量&#34;在JavaScript中。
您可以使用this[variableName]
通过包含变量名称的字符串访问变量,但同样,您不应该这样做。你应该使用一个数组。
在您的情况下,您将使用questionValue = this["question" + i]
,但再次使用不要。改为使用数组。
我不确定您为什么每次都使用"question" + numberofquestions
10