我正在探索谷歌闭包编译器,我注意到的一件事是它转换while(true)成了for(;;).
两者都挂起浏览器,但为什么空for循环不会立即中断?它的第二部分是空的,因此是假的.当第二部分是假的时候,for循环停止并继续执行for循环之后的代码是不是真的?
有人可能会对此作出解释吗?
Mch*_*chl 21
不,这不是真的.
请参阅:https://developer.mozilla.org/en/JavaScript/Reference/Statements/for
条件
在每次循环迭代之前要计算的表达式.如果此表达式的计算结果为true,则执行语句.此条件测试是可选的.如果省略,则条件始终计算为true.如果表达式的计算结果为false,则执行将跳转到for构造后面的第一个表达式.
我或许应该提供ECMAScript参考的链接,但我很确定它或多或少地说明了相同的内容.