ECMAScript / ECMA-262 Edition 5.1ベースのJavaScript文法
JavaScriptの反復文には、do...while/while/for/for...in文があります。
何れも式が1つである場合、1行で記述する場合も2行めに処理を記述する場合もブロックを示す波カッコ及び文末尾のセミコロンは省略可能です。
JavaScriptのwhile文では、while条件に応じたメインの処理を実行します。
while ( 条件式 ) { 処理 ; }
while ( 条件式 ) {
処理 ;
}
do 前処理 ; while ( 条件式 ) { 処理 ; }
do 前処理 ; while ( 条件式 ) {
処理 ;
}
JavaScriptのdo...while文では、do と while の間にwhile条件にに関わらず、メインのループに入る前に(変数の初期化など必ず1度)処理しておきたい式を書き、その式を実行後、while条件に応じたメインの処理を実行します。
do
前処理1 ;
前処理2 ;
... ;
while ( 条件式 ) {
処理 ;
}
前処理は複数行記述することも可能です。
尚、 do...while 文も while 文も while 条件は、真理値(真偽値)を返す式であり、その条件に応じて真である間、または、偽である間、ループします。
for ( ; ; ) { 処理 ; }
for ( ; ; ) {
処理 ;
}
JavaScriptの for 文では、カラを含め、条件を3つ取り、カラの場合も式と式の間をセミコロンで区切ります。
一般に for 文は、ループカウンタのループ回数指定による反復文を書きます。
for ( i=0; i <= 5 ; i++ ) {
処理 ;
}
その場合、条件の1つめは、初期化含むカウンタ変数、2つめは、任意の比較演算子による上限、または、下限、または範囲指定によるループ回数指定、3つめは、ループカウンタの増分または、減分式を記述し、例の場合、0から5まで、計6回ループ処理を繰り返します。
3つめの増分、減分は、前置式(++i,--i)または、後置式(i++,i--)を使用することが可能です。
for ( 変数 in 配列 ) { 処理 ; }
for ( 変数 in 配列 ) {
処理 ;
}
JavaScriptの for...in 文は、配列要素を1つずつ取り出しながら個々の要素に対して何らかの処理を行うことが可能です。
in の後に配列を、for と in の間に配列の要素1つを受け取る為の変数を記述することでその変数名を使って個々の要素にアクセスすることが可能になります。