js配列forEachインスタンスの詳細な使用方法

js配列forEachインスタンスの詳細な使用方法

1. forEach() は map() に似ています。これも渡された関数に各要素を順番に適用しますが、新しい配列は返しません。

2. forEach() は、配列を走査し、配列の各要素を呼び出してコールバック関数に渡すためによく使用されます。転送関数は値を返す必要はありません。

var arr = [7,4,6​​,51,1];
試してください{arr.forEach((item,index)=>{
      (項目<5)の場合{
       throw new Error("myerr") //myerrの新しいエラーメッセージを作成する
      }
      console.log(item)//ループが終了したことを示すために7のみを出力します})}catch(e){
            console.log(e.message);
      if (e.message!=="myerr") { //定義したエラーでない場合は、そのまま破棄します。throw e
      }
     }

知識ポイントの拡張:

手書き forEach

forEach()メソッドは、配列の各要素に対して指定された関数を 1 回実行します。

arr.forEach(callback(currentValue[, index[, array]])[, thisArg]);

  • 折り返し電話

    • 現在の値
      配列内で現在処理されている要素。
    • index オプション 処理中の現在の要素の配列内のインデックス。
    • 配列オプション
      forEach() メソッドが操作する配列。
    • thisArg オプションオプションのパラメーター。コールバック関数が実行されたときに this の値として使用されます。
  • 戻り値なし

forEach関数にthisArgパラメータが指定されている場合、そのパラメータはコールバック関数のthis値として使用されます。それ以外の場合、 this値はundefined になります。コールバック関数内のthisのバインディングは、関数が呼び出されたときの一般的なthisバインディング ルールに従って決定されます。

arr = [1, 2, 3, 4]とします。

arr.forEach((...item) => console.log(item));

// [1, 0, 配列(4)] 現在の値
関数カウンター() {
 this.sum = 0;
 カウント = 0;
}

// thisArg パラメータ (this) は forEach() に渡されるため、呼び出されるたびに、その this 値としてコールバック関数に渡されます。
Counter.prototype.add = function(配列) {
 配列.forEach(関数(エントリ) {
  this.sum += エントリ;
  ++これ.count;
 }、 これ);
 // ^---- 注記
};

定数obj = 新しいカウンター();
obj.add([2, 5, 9]);
オブジェクトの数;
// 3 === (1 + 1 + 1)
オブジェクトの合計;
// 16 === (2 + 5 + 9)

  • すべての配列にはこのメソッドがあります
  • コールバックパラメータは、各項目、インデックス、元の配列です。
Array.prototype.forEach = function(fn, thisArg) {
 var _this;
 if (typeof fn !== "関数") {
  throw "パラメータは関数である必要があります";
 }
 引数の長さが1より大きい場合
  _this = この引数;
 }
 Array.isArray(arr) の場合 {
  throw "forEach メソッドは配列でのみ使用できます";
 }

 for (let index = 0; index < arr.length; index++) {
  fn.call(_this, arr[インデックス], インデックス, arr);
 }
};

js 配列 forEach の例の詳細な使用法に関するこの記事はこれで終わりです。js 配列 forEach メソッドの使用法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JavaScript で知らない Object.entries の使い方
  • js 配列 fill() 充填メソッド
  • JavaScript配列の重複排除のいくつかの方法についての詳細な説明
  • 任意の長さの配列を作成または埋めるための JS のヒントの要約
  • JavaScript 配列と非配列オブジェクトのディープ クローンとシャロー クローンの原則の詳細な説明
  • JavaScript配列重複排除の詳細な説明
  • js 配列エントリ() 反復メソッドを取得する

<<:  CSS と HTML とフロントエンド テクノロジーのレイヤー図

>>:  MySQL データ型 DECIMAL の使用方法の詳細な説明

推薦する

docker の run/cmd/entrypoint の違いの詳細な説明

Dockerfile では、run、cmd、entrypoint はすべてコマンドを実行するために使...

Mysql接続数の設定と取得方法

接続数を取得する --- 最大接続数を取得します。SHOW VARIABLES LIKE '...

RedisとMemcacheの比較と選び方

最近 redis を使っていて、とても便利だと感じているのですが、インメモリ データベースを選択する...

忘れられたMySQLパスワードとログインエラーの問題について簡単に説明します

MySQL ログイン パスワードを忘れた場合、解決方法は実はとても簡単です。MySQL メイン構成フ...

nginx を使用して特定のインターフェース (URL) をブロックする方法

1. はじめに場合によっては、Web プラットフォームがオンラインになった後、サービス インターフェ...

MySQL の重要なログファイルの包括的なインベントリ

目次導入ログ分類パラメータファイルエラーログファイル完全なログファイルスロークエリログバイナリログフ...

Linux Zabbixカスタム監視およびアラーム実装プロセスの分析

ターゲットzabbix フロントエンド監視の iostat コマンドでデータの 1 つを表示します。...

MySQLクエリステートメント内のユーザー変数のコード分析

前回の記事では、MySQL 最適化の概要 - クエリの合計数を紹介しました。この記事では、クエリ ス...

Nginx セッション損失問題の解決策

nginx をリバース プロキシ tomcat として使用する場合、セッション損失が発生する可能性が...

Nginxを使用してストリーミングメディアサーバーを構築し、ライブブロードキャスト機能を実現する

前面に書かれた近年、ライブストリーミング業界は非常に人気が高まっています。伝統的な業界でのライブスト...

優れたウェブワイヤーフレーム設計・制作ツール13選を紹介

プロジェクトの作業を開始するときは、ワイヤーフレームを使用してアイデアをスケッチすることが重要です。...

HTTPS の原則の説明

HTTPS ウェブサイトの構築コストが下がるにつれて、ほとんどのウェブサイトが HTTPS プロトコ...

QQブラウザ機能を実装するためのCSS

コード知識ポイント1. fullpage.jsを組み合わせてフルスクリーンスクロールを実現する2. ...

Vueはドラッグアンドドロップを使用して構造ツリーを作成します

この記事の例では、ドラッグアンドドロップを使用して構造ツリーを作成するVueの具体的なコードを共有し...

MySQL ステートメントコメントの紹介

MySQL は次の 3 種類のコメントをサポートしています。 1. 行末の「#」文字から。 2. 「...