循环语法错误

时间:2014-08-20 22:28:12

标签: javascript while-loop

课程要求我形成一个while循环,我不断得到错误或无限循环。我做错了什么?

var understand = true;

while(understand= true){
    console.log("I'm learning while loops!");
    understand = false;
}

2 个答案:

答案 0 :(得分:4)

您正在使用赋值运算符(=)而非等号测试(==)。

使用:while(understand == true)

或简化:while(understand)

从评论中更新:

===表示值和数据类型必须相等,而==会在比较前尝试将它们转换为相同的类型。

例如:

"3" == 3 // True (implicitly)
"3" === 3 // False because a string is not a number.

答案 1 :(得分:3)

=表示作业,而==则是比较。所以:

while(understand == true)

另请注意while和其他分支结构,请采取条件。由于这是一个布尔值,你可以自己使用:

while(understand)

还注意=====之间的区别(严格比较)。比较==将尝试在比较值之前将双方转换为相同的数据类型。虽然严格比较===没有,但在大多数情况下会更快。例如:

1 ==  "1"  // This is true
1 === "1" // This is false