コンテンツにスキップ

for ステートメント

for ステートメント

for ステートメントは、while ステートメントに似ていますが、より複雑なものです。

構文は以下の通りです。

for(第1節;第2節;第3節) ステートメントまたはブロック

ここで、第1節には、ループに入る前に実行したい式を指定します。ここには変数宣言を行うこともできて、ここで宣言した変数は、ループの間中有効なものとされます ( ループを抜けると削除されます )。省略することもできます。

第2節には条件式を指定します。この条件式が true の間、ステートメントまたはブロックが繰り返し実行されます。省略すると、常に真であると見なされます。

第3節には、ステートメントまたはブロックの最後で実行したい式を指定します。省略することもできます。

動作としては、

(1) まず、第1節を実行する

(2) 第2節を評価し、偽ならばステートメントまたはブロックは評価されずに終わる

(3) ステートメントまたはブロックを実行する

(4) 第3節を実行する

(5) 第2節を評価し、偽ならばループを抜ける

(6) (3) から繰り返す

ブロック中に **break** ステートメントがあった場合は、その時点でループから抜けます。**continue** ステートメントがあった場合は、(4) に飛びます。

    var i,a=1;
    for(i=1;i<5;i++)
    {
        a*=i;
    }

    var i;
    for(i=0;i<10;i++)
    {
        if(obj[i]==0) continue; // continue しても i++ が実行される
        if(obj[i]==1) break; // break するとその場で抜ける
        func(obj[i]);
    }