在阅读JS编辑器(Tern)中的代码时,我遇到了以下代码片段中使用for循环的各种用法:
代码片段1 @ 第463-468行:
for (;;) {
/* some code */
}
代码片段 2 @ 第 97-100 行
for (var i = 0; ; ++i) {
/* some code */
}
同样地,我也遇到了一个空循环体的for循环,例如:
for (var p; p; p = someValue) /* empty body */ ;
我正在尝试理解代码执行流程。
我的理解是,对于片段1中的代码,for循环没有条件,因此它可能会无限继续吗?对于片段2中的代码,i
不断增加而没有限制吗?对于第三个代码片段,循环将继续直到p
被分配为评估为false
的内容为止?
这些是我脑海中的想法,但我不确定。请协助。
break
语句,它们就可以提前结束。 - piokuc