有人可以解释一下像"for (;;)"
这样的for-loop
的语法吗 我需要知道的是像"for (;;)"
这样的for-loop
的标头是否具有empty-statements
。
我搜索了 ECMAScript 规范,了解如果像规范中的for (;;)
一样跳过for-loop's
标头中的所有可选表达式会发生什么,但我仍然没有找到它
有人可以解释一下,即使规范没有提到像for (;;)
这样的for-loop
无限循环/运行
我需要知道最后一件事,为什么人们调用for-loop
的标头是有Expression's
我看到 for 循环的语法允许我们编写像var i = 0
in the header of the for-loop
这样的声明,我看到for-loops
语法允许我们在其标头中编写semicolons ;
只有语句需要semicolons
这是否意味着for-loop's
标头中的所有语法都Statements
在循环定义的标准中,它将如下所示:
for (var i = 0; i < 5; i++)
{
//Do something here
}
您的语句将 i 定义为 0 (var i = 0
(。然后,有一个条件/表达式,for 循环每次运行时都会检查,在此示例中检查 i 是否小于 5 (i < 5
(。
因此,为了解决问题的第一部分,当您将 for 循环定义为for(;;)
时,您只是定义了一个没有必须满足的条件的循环。因此,它永远继续运行/循环。这是可以完成的,因为 for 循环定义的所有部分都是可选的。所以,没有"empty-statements
"。它只是定义没有可选参数的 for 循环。我们用分号填充它,以表示空参数之间的转换。