多重ループの抜け方
ループの抜け方に関して、昨日はbreak文とcontinue文を紹介した。多重ループでもbreak文やcontinue文は使える。ただし、ジャンプ先は一番内側のループの括弧までだ。外側のループの括弧まではジャンプできない。
そこで、今日は多重ループの抜け方としてラベルというものを紹介する。ラベルを付けるとジャンプした際にラベルをつけたループの括弧までジャンプできる。
break文の場合は、
i_loop: // これがラベル for (var i = 3; i <= 5; i++){ for (var j = 2; j <= 4; j++){ if (j == 3) break i_loop; console.log(Math.pow(i,j)); } }
出力は
9
となる。また、continue文の場合は、
i_loop: for (var i = 3; i <= 5; i++){ for (var j = 2; j <= 4; j++){ if (j == 3) continue i_loop; console.log(Math.pow(i,j)); } }
出力は
9
16
25
となる。
これらの場合もbreak文だと括弧の直後、continue文だと括弧の直前までジャンプしているのが分かる。