【るーぷ】

ループ(繰り返し処理) とは?

最終更新:
💡 同じ手順を、次のデータにも繰り返す

同じ処理を繰り返す、プログラムの仕組み。条件やデータの並びに応じて処理を進める。forやwhileなどの書き方があり、言語によって構文が異なる。

📌 このページのポイント
whileで、0・1・2を表示する例i = 0 から開始i は3未満?はいi を表示i を1増やす戻るいいえ終了3になったら、表示せずに終わる
JavaScriptのwhileを使う考え方。条件を見る→表示して1増やす→条件へ戻る、を繰り返し、0・1・2を表示します。
ひよこ ひよこ
同じコードを、何回も書かなくていいの?
ペンギン先生 ペンギン先生
そうだよ。たとえば三人の名前を順番に表示するなら、「次の名前を取り出して表示」を繰り返せる。人数が増えても同じ手順を使いやすいね。実行時間は処理の内容や件数によるので、繰り返せば一瞬で終わるという意味ではないよ。
ひよこ ひよこ
forは回数、whileは条件って覚えればいい?
ペンギン先生 ペンギン先生
目安にはなるけれど、forも条件を使うよ。JavaScriptのforは初期化・継続条件・更新を書ける。whileは条件が真の間、処理する。配列などの値を順番に扱うならfor...ofも使えるんだ。言語によって書き方が違うので、ここはJavaScriptの例だよ。
ひよこ ひよこ
条件が最初から違ったら、一回も動かない?
ペンギン先生 ペンギン先生
whileは先に条件を見るので、最初から偽なら処理をしないよ。do...whileは先に一回処理して、後で条件を見る。図はwhileで三回表示する例。iを0から始め、iが3未満なら表示して1増やすので、0・1・2を表示して終わるよ。
ひよこ ひよこ
途中で終わりたいときは?
ペンギン先生 ペンギン先生
breakはループを抜ける。continueはその回の残りを飛ばし、次の繰り返しへ進むよ。JavaScriptのforではcontinueの後も更新式へ進むけれど、whileで更新を飛ばすと条件が変わらないことがある。何が次に実行されるかを確かめよう。
ひよこ ひよこ
ずっと繰り返す処理は、全部バグ?
ペンギン先生 ペンギン先生
意図して続ける処理もあるよ。ただしブラウザーで処理を譲らず回し続けると、画面操作を妨げることがある。終了や待機の設計が必要だね。配列のmapなども反復処理の別の書き方で、使うだけで速くなったり副作用が消えたりするわけではないよ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ループ」って出てきたら「同じ処理を繰り返す仕組み」と思えばだいたいOK!
📖 おまけ:英語の意味
「Loop」 = 繰り返し・輪
💬 Loop(輪)のように処理がぐるぐる回る、という意味だよ

参考資料

← 用語集にもどる