我这里有这个javascript代码,只是拒绝工作。我有另一个与此一起使用的javascript代码,它定义了那些数组变量(主要是文本)。有人能看到我在这里做错了吗?
var ran_num = new Array[37]
for (i = 1; i < 39; i++){
document.write('<span id=' + '"pitanje' + i + '"' + '>' + '</span>')
ran_num[i] = Math.floor((Math.random() * 100) + 1)
if (i != 3 && i != 4 && i != 29){
if(ran_num[i] < 30){
document.getElementById("pitanje"+i).innerHTML = pitanje1[i]
}
else{
document.getElementById("pitanje"+i).innerHTML = pitanje2[i]
}
}
else if(i == 3){
document.getElementById("pitanje"+i).innerHTML = pitanje3
}
else if (i == 4) {
if (ran_num[i] < 30){
document.getElementById("pitanje"+i).innerHTML = pitanje4_1
}
if (ran_num[i] < 60){
document.getElementById("pitanje"+i).innerHTML = pitanje4_2
}
else{
document.getElementById("pitanje"+i).innerHTML = pitanje4_3
}
}
else if (i == 29){
document.getElementById("pitanje"+i).innerHTML = pitanje29
}
}
答案 0 :(得分:2)
您的阵列初始化不正确,请尝试用此
替换您的第一行var ran_num = new Array(37); // this creates an aray with 37 elements that are undefined
在for循环中使用之前,您可以使用这样的值填充数组:
for( var i = 0; i < ran_num.length; i++) {
ran_num[i] = i;
}