【Amazon】人気の商品が日替わりで登場!
毎日お得なタイムセール!商品をみる

【JavaScript】while文・do~while文の書き方・違いについて徹底解説

本記事では、JavaScriptの繰り返し処理で使われるwhile文・do~while文の書き方と違いについて解説しています。

JavaScriptの学習におすすめ書籍
1冊ですべて身につくJavaScript入門講座
総合評価
( 5 )
メリット
  • 誰でも分かるように嚙み砕いて説明してくれる
  • アニメーションの知識が深く学べる
  • 1つのWebサイトを作りながら学べる
楽天ブックス
¥2,794 (2024/04/21 02:09時点 | 楽天市場調べ)
\楽天ポイント5倍セール!/
楽天市場で探す
\ポイント5%還元!/
Yahoo!ショッピングで探す
先輩くん

Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!

後輩ちゃん

初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!

全プログラマー必見!
変数名/関数名にもう悩まない!
リーダブルコード
総合評価
( 5 )
メリット
  • 美しいコードが書けるが自然と書けるようになる
  • 他の開発者が理解しやすいコードになる
著:Dustin Boswell, 著:Trevor Foucher, 解説:須藤 功平, 翻訳:角 征典
¥2,640 (2023/07/23 02:48時点 | Amazon調べ)
\楽天ポイント5倍セール!/
楽天市場で探す
\ポイント5%還元!/
Yahoo!ショッピングで探す
目次

while文・do~while文の書き方・使い方

while文とdo~while文の基本的な書き方は以下のとおりです。

while(条件式){
    // 条件式がtrue時に実行させたい処理を記述
}
do{
    // 条件式がtrue時に実行させたい処理を記述
}while(条件式);
コードの解説
  • 条件式:ループ処理の条件

while文・do~while文は、条件式がtrue(真)である場合にのみブロック内の処理が実行されます。

先輩くん

while文・do~while文を使ったサンプルコードを用意したので、動作確認してみましょう!

let i = 0;

while (i < 3) {
  console.log(`${i + 1}回目の実行`);
  i++;
}

// => 1回目の実行
// => 2回目の実行
// => 3回目の実行
let i = 0;

do {
  console.log(`${i + 1}回目の実行`);
  i++;
} while (i < 3);

// => 1回目の実行
// => 2回目の実行
// => 3回目の実行

Live Serverなどの自動更新される拡張機能を使用している場合は、プログラムが完成する前に更新がされてしまい無限ループでブラウザがフリーズしてしまうことがあるので、注意してください。

while文・do~while文の違い

while文・do~while文の違いについて見ていきましょう。

先ほど紹介したサンプルコードでは、どちらも同じ結果になりました。基本的にはwhile文とdo~while文は同じ挙動をしますが、下記のような場合は異なる挙動をとります。

let i = 3;

while(i < 3) {
  console.log("処理が実行されました");
  i++;
};
let i = 3;

do {
  console.log("処理が実行されました");
  i++;
} while (i < 3);

// => 処理が実行されました

while文ではブロック内の処理が実行されないのに対して、do~while文ではブロック内の処理が実行されます。

このような結果になる理由は、while文はループ処理が始まる前に条件式を判定します。そのため、while文では条件式を満たしていないと判定され一度も処理が実行されません。

しかし、do~while文では一度ループ処理を行った後に条件式を判定します。そのため、do~while文ではブロック内の処理が一度実行されます。

ブログランキング・にほんブログ村へ PVアクセスランキング にほんブログ村 FC2 Blog Ranking

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次