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;
if(obj[i]==1) break;
func(obj[i]);
}