2016-12-09 37 views
0

基本力學問題。在下面的for loop中,我將第一個和第三個循環語句從其正常位置移開。 var i=1位於環路之上,而i++位於環路之內。一切運行良好。不過,我讀過for loop也可以運行正常,第二條語句「i > 10」已刪除。除了括號內的默認位置之外,第二條語句還可以在哪裏? for循環看起來像for (;;;)刪除for循環頂部行的所有語句

var i=1; 
for (; i > 10;) { 
    document.getElementById("test").innerHTML += i + "<br>"; 
    i++; 
} 
+0

是,for循環看起來像'爲(;;;)'。第二條語句「我<10」可以位於'for'循環中的'if'塊中。如果條件滿足,則跳出循環。雖然我不知道你爲什麼想這樣做。 '10>會導致無限循環。 –

+0

你的循環的'i> 10'條件會導致它永遠不會運行。 –

回答

3

是的確

var i = 1; 
for (;;) { 
    if(i > 10) break; 
    i++; 
} 
+0

您的增量在模擬原始行爲的錯誤位置。 –

+0

@squint是嗎?然後我會修復它。我的錯 :) – kidwon

3

一個for循環,沒有參數看起來像這樣:for(;;)

它基本上等於while(true),因此如果使用關鍵字break它將無限運行或停止。

你可以試試這個:

for(;;) { 
    alert("infinite loop"); 
} 

你會看到,警報不停止。