do…whileループの概要
| 繰り返し処理 JavaScript予約語 | ||
|
do…while 概要 わかりやすく説明 |
||
|
do…whileループの基本的な使い方
以下は、do...whileループの基本的な例です。
// do...whileループの基本例
let count = 0;
do {
console.log(`現在のカウント: ${count}`);
count++;
} while (count < 5);
// 出力:
// 現在のカウント: 0
// 現在のカウント: 1
// 現在のカウント: 2
// 現在のカウント: 3
// 現在のカウント: 4
doブロック内のコードが実行されます。- 実行後に
whileの条件が評価されます。 - 条件が
trueの場合、ループを継続します。
条件が最初からfalseの場合の挙動
do...whileでは、条件がfalseであっても最初の1回は必ず実行されます。
// 最初の条件がfalseの場合
let count = 10;
do {
console.log(`現在のカウント: ${count}`);
count++;
} while (count < 5);
// 出力:
// 現在のカウント: 10
- 条件が
falseでも、doブロック内のコードは1回実行されます。 - 条件式の評価は2回目以降の実行に影響します。
応用例: ユーザー入力の検証
以下の例では、do...whileを使ってユーザーが正しい入力を行うまで繰り返します。
// ユーザー入力を検証
let userInput;
do {
userInput = prompt("1から10の間の数字を入力してください:");
} while (userInput < 1 || userInput > 10);
console.log(`入力された数字: ${userInput}`);
- ユーザーが条件を満たす入力を行うまで繰り返します。
- 最初のプロンプトは必ず実行されます。
注意点
- 無限ループに注意: 条件が常に
trueになると無限ループが発生するため、必ず終了条件を適切に設定してください。 - 初期化を忘れない: ループ内で使う変数は必ず初期化し、条件式で正しく評価されるようにします。
- 他のループとの比較: 必ず1回実行したい場合にのみ
do...whileを選び、通常の繰り返しにはforやwhileを検討してください。
よくある質問
- Q:
do...whileとwhileの違いは何ですか? - A:
do...whileは、条件式の評価が後に行われるため、最低でも1回はループ内のコードが実行されます。一方、whileは条件式がfalseの場合、ループが1回も実行されないことがあります。 - Q: いつ
do...whileを使うべきですか? - A: 必ず1回実行する必要がある処理(例: ユーザー入力の確認や初期化処理)で使用します。
- Q:
do...whileで無限ループを避けるにはどうすればいいですか? - A: 条件式を適切に設計し、ループ内で変数を更新することで無限ループを防止できます。
まとめ
do...whileは、必ず1回実行したい処理を含む繰り返しに適したループ構文です。
- 条件が
falseでも1回は実行される点で、whileループと異なります。 - ユーザー入力や初期化処理などの特定の場面で便利に使えます。
- 無限ループにならないよう、終了条件を適切に設計してください。