js の Array.forEach でループを終了する方法の例

js の Array.forEach でループを終了する方法の例

forEach() メソッド

構文: array.forEach(callback(currentvalue,index,arr),thisValue)


callback は配列内の各要素に対して実行される関数で、1 ~ 3 個のパラメータを受け入れることができます。

  • currentvalueパラメータは配列の現在の要素を表します。必須パラメータです。
  • インデックスパラメータは現在の要素のインデックスを表します。オプションパラメータ
  • arr パラメータは、現在の要素が属する配列を示します。これはオプションのパラメータです。

thisValue は、コールバック関数 callback() が実行されたときの this ポイントを表します。オプションのパラメータ。書き込まれていない場合、デフォルトではウィンドウのグローバルを指す。

    var arr = [1, 3, 5, 13, 2];
    var res = arr.forEach(function(item,index) {
        console.log(`配列の${index+1}番目の要素は${item}です`);
    })
    console.log(res); // forEachの戻り値は未定義です。

実行結果:

js の Array.forEach のループから抜け出す方法

forEach は break や return によってループから抜け出すことはできません。ループから抜け出す一般的な方法は、例外をスローすることです。

 試す {
   配列 = [1, 2, 3, 4] とします。
   配列.forEach((項目, インデックス) => {
     (項目 === 3)の場合{
       throw new Error('end')//エラーが発生した場合、ループは終了します} else {
       コンソール.log(アイテム)
     }
   })
 } キャッチ (e) {
 }

この書き方は実は非常に面倒です。

解決:

1. 代わりに every を使用します。

配列 = [1, 2, 3, 4] とします。
配列.every((項目, インデックス) => {
  (項目 === 3)の場合{
    真を返す
  } それ以外 {
    コンソール.log(アイテム)
  }
})

2. 自分で書いてみる😁

//ループから抜け出せる配列のトラバーサル Array.prototype.loop = function(cbk) {
  //現在の配列が空かどうかを判断します if (this?.length) {
    (i = 0 とします; i < this.length; i++) {
      stop = cbk(this[i], i, this) とします。
      //ループを停止するかどうかを判定する if (stop) {
        壊す
      }
    }
  }
}


配列 = [1, 2, 3, 4] とします。
配列.loop ((項目, インデックス) => {
  if (item === 3) {
    真を返す
  } それ以外 {
    コンソール.log(アイテム)
  }
})

要約する

Array.forEach が js のループから抜け出すことに関するこの記事はこれで終わりです。Array.forEach が js のループから抜け出すことに関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。皆様が今後も 123WORDPRESS.COM を応援してくれることを願っています。

以下もご興味があるかもしれません:
  • JavaScript Array.reduce ソースコードの詳細な説明
  • JavaScript Array.flat() 関数の使用分析
  • JavaScript Array.prototype.slice の使用手順
  • JavaScript マッパー array.flatMap()

<<:  Vue はフォームデータ検証のサンプルコードを実装します

>>:  Baota LinuxパネルにFTP接続できない問題の解決方法の詳細な説明

推薦する

1時間で学ぶMySQLの基礎

目次MySQL を使い始めるMySQL 管理6. MySQL サーバーを起動および停止します。 7....

CSSでサウンドを再生するいくつかのテクニック

CSS は、スタイル、レイアウト、プレゼンテーションの領域です。色彩、サイズ、アニメーションが溢れて...

W3C チュートリアル (13): W3C WSDL アクティビティ

Web サービスは、アプリケーション間の通信に関係します。 WSDL は、XML ベースの Web ...

一般的なメールボックスで正常に表示できる HTML メールを作成するためのヒント

HTML メールを送信するためのヒント: スタイルを使用してインライン CSS を記述する、使用する...

MySql 自動切り捨て例の詳細な説明

MySql 自動切り捨て例の詳細な説明友人が質問しました。プロジェクト内で挿入または更新ステートメン...

Linuxでホスト名を永続的に変更する方法

ホスト名を変更する場合は、以下の手順に従ってください。ホスト名の使用hostnameコマンドを使用す...

ARGB、RGB、RGBAの違いと紹介

ARGB は、アルファ (透明度) チャネルが追加された RGB カラー モードであり、32 ビット...

tomcat8の最新のLinuxインストールプロセス

ダウンロード参考:ダウンロードするコアパッケージを選択してくださいダウンロード後、ファイルをサーバー...

CSS3+JS による虫眼鏡モードの完璧な実装の詳細説明

約 1 年前、私は「虫眼鏡効果を模倣するいくつかの方法の原理の分析」という記事を書きました。当時、自...

CSSスタイルの記述順序と命名規則と注意事項

書き順の重要性ブラウザのリフローを減らし、ブラウザのDOMレンダリングパフォーマンスを向上させる①:...

携帯電話番号の真ん中の4桁を隠すMySQL SQL文の方法

最初のクエリ テーブル構造 (sys_users): sys_users から * を選択します。最...

データベースの削除から逃走までの MySQL の徹底分析_上級編 (I) - データ整合性

1. データ整合性の概要1. データ整合性の概要データの冗長性とは、データベース内に重複したデータが...

JavaScriptの擬似配列と配列の使い方と違い

擬似配列と配列JavaScript では、5 つのプリミティブ データ型を除き、関数を含め、その他す...

Linux で Hadoop クラスターをインストールするための詳細な手順

目次1. usrディレクトリにHadoopディレクトリを作成し、インストールパッケージをそのディレク...

Vueカスタム命令の詳細な説明

目次Vueカスタムディレクティブカスタムディレクティブフック機能出力関連属性アプリケーション例要約す...