ここは、ふぇりあ16歳が不定期に連載しているオンライン小説のページです。

VNIふぇりあ16歳へ


ゼロからわかる現代JavaScript

12.二重for文

for文は繰り返しです。 前にやりましたね。

それではそのfor文を二重に使ってみたらどうでしょう?

for (i=0;i<3;i++){



をさらに

for (j=0;j<3;j++){



で囲ってあげるのです。

for (j=0;j<3;j++){

   for (i=0;i<3;i++){

   }

}

これをfor文の二重ループといいます。

結果は内側のiのfor文が一度終わりまで実行された後、
外側のjのforが1あがり、再度iのfor文が終わりまで実行されます。
そしてjのfor分が1あがる・・を繰り返します。


言葉では分かりずらいですね。

それでは試しに使ってみましょう。

今回使用するソースコード
document.write("・単純なfor文の二重ループ<br>");

//jのループ
for (j = 0; j < 3; j++) {
  //iのループ まずこちらから実行される
  for (i = 0; i < 3; i++) {
  document.write(i + j);
  }
  //iが3まであがったときにjを1加算後に改行
  document.write("<br>");
}

//九九算表
document.write("・九九算表<br>");

for (j = 1; j <= 9; j++) {

  for (i = 1; i <= 9; i++) {
  document.write(i * j);
  }

  document.write("<br>");
}

ポイントはiとはjの初期値や条件式を、用途に合わせて
変更していることです。

実行結果

コラム:
この二重ループは、二次元配列に値を入れるときにも使います。
基本中の基本です。

(C)著作権はふぇりあ16歳とお兄ちゃんにあります。
無断転載、盗用は禁止です。