2016-12-09 9 views
0

基本機能の質問。以下のfor loopでは、最初のループ文と3番目のループ文を通常の位置から移動しました。 var i=1がループの上にあり、i++がループの内側に配置されています。すべてうまく動作します。しかし、私はfor loopも2番目のステートメント "i > 10"を削除して正常に実行できることを読んだことがあります。 2番目のステートメントは、括弧内のデフォルト位置以外にどこに置くことができますか? forループはfor (;;;)のように見えますか? for(;;):パラメータなしforループの先頭行からすべてのステートメントを削除します。

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

はい、ループのために ''(;;;)のためのようになります。 2番目の文「i <10」は、 'for'ループ内の' if'ブロックの内側に置くことができます。条件が満たされれば、ループから抜け出します。私はなぜあなたがそれをこのようにしたいと思うのか分からないが。 'i> 10'は無限ループになります。 –

+0

あなたのループの 'i> 10'の条件は決して実行されません。 –

答えて

3

はい確か

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

元の動作をエミュレートするためにインクリメントが間違っています。 –

+0

@squintですか?私はそれを修正します。私の悪い:) – kidwon

3

forループは次のようになります。

基本的にwhile(true)に等しいので、無限に実行されるか、キーワードbreakが使用されている場合は停止します。

あなたはこれを試してみることができます。

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

あなたはアラートが停止しないことがわかります。

関連する問題