【发布时间】:2011-04-12 13:21:57
【问题描述】:
在我的代码的多个部分,我有类似这样的片段:
function updateScore() {
var currentPoints=0;
for (nni=0;nni<currentSession.Questions.length+1;nni++) {
currentPoints+=currentSession.Questions[nni].Score;
}
alert('hi');
document.getElementById('quiz_score').innerHTML='%'+(currentPoints/currentSession.TotalPoints)*100
}
一切正常......直到循环之后。这发生在多种情况下。循环结束后甚至不会显示警报。就像函数停止了一样......
我也遇到了迭代器(在本例中为 nni)保持全局的问题。基本上,我不能在我的代码中再次使用该变量,因为由于某种原因,如果我更改 nni,它会弄乱 for 循环。我显然没有做正确的事情。我是一个自以为是的 Javascripter(基本上是在谷歌上搜索我不知道的任何东西,我从来没有上过课)。我一定遗漏了一些关于 for 循环的内容。
谢谢!
【问题讨论】:
-
为什么
+1在nni<currentSession.Questions.length+1中?这不会超过循环的结尾吗?也许这会导致异常;检查 JS 控制台。
标签: javascript iterator