JavaScript フロー制御 (ループ)

JavaScript フロー制御 (ループ)

1. forループ

プログラムでは、繰り返し実行される文の集まりをループ本体と呼びます。実行を継続できるかどうかは、ループの終了条件によって決まります。ループ本体とループ終了条件で構成される文をループ文と呼びます。
forループは主に、通常はカウントに関連する特定のコードを複数回ループするために使用されます。

その文法構造は次のとおりです。

for(変数の初期化; 条件式; 演算式){
    //ループ本体}

  • 変数を初期化する:通常はカウンターを初期化するために使用されます。この式では、 varキーワードを使用して新しい変数を宣言し、回数を記録するのに役立ちます。
  • 条件式:各ループを実行できるかどうかを判断するために使用されます。結果がtrueの場合はループを続行し、そうでない場合はループを終了します。
  • 演算式:各ループの最後に実行される式。通常、カウンター変数を更新または増分するために使用されます。もちろん、変数を減算することも可能です。

たとえば、 for ループを使用して同じコードを実行し、 「I love learning front-end」を 10 回出力します。

(i=0;i<10;i++)の場合{
    console.log('フロントエンドを学ぶのが大好きです');
}

出力は次のようになります。

もう 1 つの例は、for ループを使用してさまざまなコードを実行することです。人の年齢を 1 から 20 まで出力します。

(var i = 1; i <= 20; i++) の場合 {
    console.log('この人は' + i + '歳です');
}

出力は次のようになります。

2. 二重の for ループ

ループのネストとは、ループ ステートメント内で別のループ ステートメントを定義する文法構造を指します。たとえば、for ループ ステートメント内で別の for ループをネストできます。このような for ループ ステートメントを二重 for ループと呼びます。

文法構造:

for (外側のループ開始; 外側のループ条件; 外側のループ演算式) {
    for (内側ループの開始; 内側ループの条件; 内側ループの操作式) {  
       実行されるコード。
   }
}

  • 内側のループは外側のループのステートメントとみなすことができます
  • 内側のループの実行順序もforループの実行順序に従う必要がある
  • 外側のループは1回実行され、内側のループは常に実行される。

たとえば、星を 5 行 5 列印刷します。

コア:

  • (1)内側のループは5つの星を一列に印刷する役割を担う
  • (2)外側のループは5行を印刷する役割を担う

var スター = '';
(var j = 1; j <= 3; j++) の場合 {
    (var i = 1; i <= 3; i++) の場合 {
      星 += '☆'
    }
    // 星が 5 つになるたびに改行を追加します star += '\n'
}
コンソールログ(スター);

実行結果は次のとおりです。

3. whileループ

whileステートメントは、条件式が true である間、ループ内の指定されたコードセクションを実行し、式が true でない場合はループを終了できます。

while ステートメントの構文は次のとおりです。

while (条件式) {
    // ループ本体コード}

実装のアイデア:

  • (1)まず条件式を実行します。結果がtrueの場合はループ本体のコードを実行し、 falseの場合はループを終了して次のコードを実行します。
  • (2)ループ本体コードを実行する
  • (3)ループ本体コードの実行後、プログラムは実行条件式の判定を継続する。条件がまだtrueであれば、ループ本体はループ条件がfalseなるまで実行を継続し、ループ処理全体が終了される。

以下の点に注意してください。

whileループを使用する場合は、終了条件が必要であることに注意してください。終了条件がないと、無限ループになります。
whileループとforループの違いは、 whileループではユーザー名とパスワードの判定など、より複雑な条件判定を行うことができることです。

たとえば、while ループを使用して、1 から 100 までのすべての整数の合計を計算します。

var 合計 = 0;
var i = 0;
i<=100 の場合{
    合計 += i;
    私は++;
}
console.log(合計);

出力は次のようになります。

4. whileループを実行する

do… whileステートメントは、実際にはwhileステートメントのバリエーションです。ループはコード ブロックを 1 回実行し、条件式を判断します。条件が true の場合、ループ本体が繰り返し実行され、そうでない場合はループが終了します。

do... while ステートメントの文法構造は次のとおりです。

する {
    // ループ本体コード - 条件式が true の間、ループ本体コードを繰り返し実行します } while(条件式);

実装のアイデア:

  • ループコードを1回実行する
  • 条件式を再度実行します。結果がtrueの場合は、ループ本体のコードの実行を続行します。結果がfalseの場合は、ループを終了し、次のコードの実行を続行します。

注:最初にループ本体を実行してから判断すると、do...while ループステートメントがループ本体コードを少なくとも 1 回実行することがわかります。

たとえば、 do while ループを使用して 1 から 100 までのすべての整数の合計を計算します。

var 合計 = 0;
var i = 0;
する{
    合計 += i;
    私は++;
}i<=100 の場合
console.log(合計);

5. サイクルの概要

JS にはforループ、 whiledo whileループがあります。
3つのループは多くの場合、互換的に使用できます。回数を数える場合、3つのループは基本的に同じですが、
whiledo…whileより複雑な判断条件を設定でき、 for ループよりも柔軟性があります。
whiledo…whileの実行順序は異なります。whileは最初に判断してから実行しますが、while do...whileは最初に1回実行してから判断して実行します。
whiledo…whileの実行時間は異なります。do...while はループ本体を少なくとも 1 回実行しますが、while while は 1 回実行しない場合があります。

6. 休憩を続ける

1. continueキーワード

continueキーワードは、現在のループからすぐに抜けて次のループに進むために使用されます (現在のループ本体のcontinueの後のコードは 1 回少なく実行されます)。
たとえば、パンを 5 個食べて、3 個目に虫がいた場合は、3 個目を捨てて、4 個目と 5 個目のパンを食べ続ける必要があります。

コードの実装は次のとおりです。

(var i = 1; i <= 5; i++) の場合 {
     もし (i == 3) {
         console.log('このパンには虫がいます。捨ててください');
         continue; // このループから抜け出します。抜け出すのは 3 番目のループです}
      console.log('私は' + i + '番目のパンを食べています');
 }

2. breakキーワード

breakキーワードは、ループ全体 (ループの終了) からすぐに抜け出すために使用されます。

たとえば、パンを 5 個食べて、3 個目の半分に虫が入っていることがわかったら、残りは食べません。コードは次のとおりです。

(var i = 1; i <= 5; i++) の場合 {
   もし (i == 3) {
       break; // for ループ全体を直接終了し、for 全体の下のステートメントにジャンプします }
   console.log('私は' + i + '番目のパンを食べています');
 }

JavaScript フロー制御 (ループ) に関するこの記事はこれで終わりです。JavaScript フロー制御に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JavaScript フロー制御 (分岐)
  • JavaScript フロー制御ステートメントのコレクション
  • JSP を使用して掛け算表を生成する簡単な例
  • jsは掛け算表の華やかな効果を実現します
  • JavaScript で掛け算表を書く (オプション 2 つ)
  • この記事では、JavaScriptを使用してプロセス制御を使用して掛け算表を印刷する方法を説明します。

<<:  単純なCSSの詳細に惚れ込むと、重要ではないものの、効率性が向上する可能性がある

>>:  html 内の絶対パス URL と相対パス URL、サブディレクトリ、親ディレクトリ、ルート ディレクトリ

推薦する

CSS3は子供のころの紙飛行機を実現する

今日は折り紙飛行機(飛べる飛行機)を作ります基本的にすべてCSSで実装されており、JSはごく一部に過...

Docker でコンテナのポート マッピングを動的に変更する方法

前書き: Docker のポート マッピングは、多くの場合、Docker Run コマンド中に -p...

垂直方向の中央揃えをエレガントに実現する方法を教えます(推奨)

序文CSS で水平方向と垂直方向に中央揃えする方法はたくさんあります。この記事で紹介する方法は非常に...

tdが空の場合に境界線を表示する方法

以前、CSS を使用してテーブルの border + bordercolordark + borde...

JavaScript で 9 グリッドのモバイル パズル ゲームを実装

この記事では、Jiugonggeモバイルパズルゲームを実装するためのJavaScriptの具体的なコ...

テーブルを使用してフォームコントロールの形式を調整し、見栄えを良くします。

自分でウェブページを書きたいので、HTML 言語についても少し勉強しています。これは、大学時代にウェ...

Centos 7 64 ビット デスクトップ バージョンのインストール グラフィック チュートリアル

システムが遅いと感じてソースを変更したい場合は、別の記事で整理しました https://blog.c...

Linuxのbasenameコマンドの使い方

01. コマンドの概要basename - ファイル名からディレクトリとサフィックスを削除しますba...

TCP 3 回目のハンドシェイク データ転送プロセス図

RFC793 ドキュメントの SYN フラグを持つプロセス パケットはデータを伝送できません。つま...

HTML ファイルにフラッシュ ビデオ形式 (flv、swf) ファイルを埋め込む方法

Flash ファイル形式: .FLV および .SWFフラッシュ ビデオ形式には、.flv と .s...

nginx でクロスドメイン障害修復を構成する方法の例

Nginxのクロスドメイン設定は次のようには機能しません サーバー{ 聞く 80; server_n...

CSSセレクターでの正規表現の使用

はい、CSS にも正規表現があります (アーメン) CSS で目立つための 2 つの強力なツール: ...

JavaScript データ型の詳細な説明

目次1. リテラル1.1 数値リテラル1.2 浮動小数点リテラル1.3 特別な値1.4 文字列リテラ...

IE6 および IE7 で DIV コンテナの固定高さを使用するためのヒント

IE6 と IE7 では CSS の解釈に多くの違いがあります。今日はそのうちの 1 つである高さに...

innodb_flush_method 値メソッド (例の説明)

innodb_flush_methodのいくつかの典型的な値 fsync: InnoDB は fs...