制御構造

条件分岐文

if

if((※1)){ (※2) }

(※1)に条件式を書き,条件が成立すれば(※2)に書かれた処理を行います.

処理の内容は{ }で囲いますが,処理が1つだけなら{ }は省略可です.なお,この後で説明する文も全て規則に従います.

if((※1)){ (※2) } else { (※3) }

(※1)に条件式を書き,条件が成立すれば(※2)に書かれた処理を行い,条件が成立しなければ(※3)に書かれた処理を行います.

if((※1)){ (※2) } else if((※3)) { (※4) } else { (※5) }

(※1)に条件式を書き,条件が成立すれば(※2)に書かれた処理を行い,条件が成立しなければ(※3)の条件を判定します.この条件が成立すれば(※4)に書かれた処理を行い,そうでなければ(※5)に書かれた処理を行います.else ifelseは省略可です.

繰り返し文

for

for((※1);(※2);(※3)){ (※4) }

(※1)(※2)(※3)に繰り返す条件を書き,条件が成立している間は(※4)に書かれた処理を行います.なお,(※1)(※2)(※3)の指定はいずれも省略できます.全て省略すると無限に(※4)の処理を繰り返します.

条件指定の例を示します.

for(loop=1;loop<=10;loop++) for(loop=1;loop<=20;loop++) for(loop=1;loop<=20;loop+=2)

最初の例では,loopに1を代入して,loop<=10の条件と比較します.条件に合っているので{ }の中に書かれた処理を実行します.その後にloop++を実行し,再びloop<=10の条件と比較します.結果的に10回処理を繰り返します.

2番目の例では,同じ考え方で20回処理が繰り返されます.3番目の例では,loopが2ずつ増えていくので繰り返す回数は10回です.

for-in

オブジェクトの中身を表示するとき等に使います.

a = new Array(5); a[0]=1; a[1]=2; a[2]=4; a[3]=8; a[4]=16; for(i in a){ document.write(a[i]); document.write("<br />"); }

この例では,配列a(オブジェクト)の中身を全て表示します.出力結果は以下です.

1 2 4 8 16

while

while((※1)){ (※2) }

(※1)に書かれた条件式が成立している限り,(※2)に書かれた処理を繰り返します.(※1)を省略すると無限ループになります.

一般的に,for文は繰り返す回数が分かっているときに,while文は繰り返す回数が分かっていないときに使います.

break文とcontinue

for(loop=1;loop<=10;loop++){ break; (※) }

break文はループから抜けだすときによく使います.上の例では,本来は(※)に書かれた処理を10回繰り返すはずですが,実際には処理が行われません.なお,抜けだすのは1段階だけです.繰り返し文をネストしている場合に,全てのループから抜けだすわけではありません.

for(loop=1;loop<=10;loop++){ (※) continue; }

continue文はループの先頭へ戻るときに使います.上の例では,本来は(※)に書かれた処理を10回繰り返すはずですが,実際には処理を無限に繰り返します.