为什么这个for循环无限循环?

时间:2016-02-22 16:07:42

标签: javascript

这个for循环不起作用。当我进入:

console.log(children.length)

我得到了4.

但是当我查看开发者控制台时,它显示的循环不会终止,但似乎只会产生空行。

var curr_ans_code = 0;
for (var z = 0; z < children.length; z++) {
  if (z = curr_ans_code) {
    score += 10;
  }
  console.log(children[z]);
}

我觉得我错过了一些非常基本的东西,但却无法理解我的生活是什么。

2 个答案:

答案 0 :(得分:4)

您将z设置为cur_ans_code(z = curr_ans_code),而不是测试其等式z == curr_ans_code

试试这个!

var curr_ans_code = 0;
for (var z = 0; z < children.length; z++) {
  if (z == curr_ans_code) {
    score += 10;
  }
  console.log(children[z]);
}

答案 1 :(得分:0)

更改

if (z = curr_ans_code) {
    score += 10;
 }

为:

if (z == curr_ans_code) {
    score += 10;
}

您正在使用分配表达式=,而不是相等==