JavaScript 配列を走査する 5 つの方法

JavaScript 配列を走査する 5 つの方法

JavaScript でコードを記述する場合、for ループ、forEach ループ、map ループ、forIn ループ、forOf ループなど、複数の方法を使用して配列を走査できます。

1. forループ: 基本的でシンプル

これは配列を走査する最も基本的かつ一般的に使用される方法であり、さまざまな開発言語が一般的にこの方法をサポートしています。

arr = ['a','b','c','d','e'] とします。
(i = 0, len = arr.length; i < len; i++) の場合 {
  コンソール.log(i); // 0 1 2 3 4
  console.log(arr[i]); //abcde
}

2. forEach() メソッド: コールバック関数の使用

forEach() これは配列オブジェクトのメソッドであり、コールバック関数をパラメーターとして受け入れます。
コールバック関数には 3 つのパラメーターがあります。

  • 1番目: 配列要素(必須)
  • 2番目: 配列要素のインデックス値(オプション)
  • 3番目: 配列自体 (オプション)
arr = ['a','b','c','d','e'] とします。
arr.forEach((item,index,arr)=> {
  console.log(item); // abcde console.log(index); // 0 1 2 3 4
  console.log(arr); // ['a','b','c','d','e']
})

3. map() メソッド: コールバック関数の使用

forEach() メソッドと同じように使用されます。

var arr = [
  {名前:'a',年齢:'18'},
  {名前:'b'、年齢:'19'},
  {名前:'c'、年齢:'20'}
];
arr.map(関数(項目,インデックス) {
  if(item.name == 'b') {
    コンソール.log(インデックス) // 1
  }
})

4. for..in ループ: オブジェクトと配列の走査

for…in ループは、オブジェクトと配列をループするために使用できます。
ループオブジェクトに推奨されますが、JSON をトラバースするためにも使用できます。

obj = {
  名前: '王大奎'、
  年齢: '18',
  体重: '70kg'
}
for(var key in obj) {
  console.log(key); // 名前 年齢 体重
  console.log(obj[key]); // 王大奎 18 70kg
}
----------------------------
arr = ['a','b','c','d','e'] とします。
for(var key in arr) {
  console.log(key); // 0 1 2 3 4 は配列のインデックスを返します console.log(arr[key]) // abcde
}

5. for…of ループ: オブジェクトと配列の走査

配列をループする場合に推奨されます。

for...of には 3 つの新しいメソッドが用意されています。

  • key() はキー名のトラバースです。
  • value() はキー値のトラバースです。
  • entry() はキーと値のペアの走査です。
let arr = ['iFLYTEK', '政治と法律のBG', 'フロントエンド開発'];
for (let 項目の arr) { 
 console.log(item); // iFLYTEK 政治と法律 BG フロントエンド開発}
// 出力配列インデックス for (let item of arr.keys()) { 
 コンソール.log(アイテム); // 0 1 2
}
// 出力内容とインデックス for (let [item, val] of arr.entries()) { 
 console.log(item + ':' + val); // 0: iFLYTEK 1: 政治と法律 BG 2: フロントエンド開発}

6. 補足

6.1. 中断と継続の問題

forEach、map、filter、reduce、every、some関数では、 breakおよびcontinueキーワードは関数内にあるため有効になりませんが、関数はクロージャ トラップの問題を解決します。
break または continue を使用するには、 for、for...in、for...of、while使用できます。

6.2 配列とオブジェクト

配列要素を反復処理するには、 for(),forEach(),map(),for...of使用します。
オブジェクトのプロパティをループするには、 for...in使用します。

上記は、JavaScript 配列トラバーサルの 5 つの方法の詳細です。JavaScript 配列トラバーサルの詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • JS でよく使用される配列トラバーサル方法と、パフォーマンス分析および比較の詳細な例
  • JavaScript 配列トラバーサルメソッドの分析例
  • JS 配列トラバーサル方法の詳細な分析 (推奨)
  • JavaScript の配列トラバーサル forEach() および map() メソッドとそれらの互換性のある記述方法の紹介
  • JavaScriptの配列トラバーサルのforとforの違いの詳細な説明
  • IE8 の JS 解析における属性と配列のトラバーサルの違いについての議論
  • JavaScript ブラウザはバインディング イベント引数の変換配列の配列トラバーサルを決定します
  • JS 配列トラバーサルにおける for、for in、for of、map、forEach の使い方と利点と欠点

<<:  MySQL グリーンバージョン設定コードと 1067 エラーの詳細

>>:  Dockerfile を使用して Java ランタイム環境のミラーを作成する方法

推薦する

VueはElementUIのフォームサンプルコードを模倣する

実装要件ElementUI を模倣したフォームは、インデックス コンポーネント、Form フォーム ...

JSに関する7つの面接の質問、あなたはいくつ正しく答えられますか

序文JavaScript では、これは関数呼び出しコンテキストです。この動作が非常に複雑であるからこ...

MySQLにインデックスを追加する方法

インデックスの簡単な紹介は次のとおりです。インデックスを追加する目的は、データベース クエリのパフォ...

MySQL NULLデータ変換方法(必読)

MySQL を使用してデータベースをクエリし、左結合を実行すると、関連付けられたフィールドの一部に...

MySQL が my.cnf を読み込む順序の詳細

目次MySQLがmy.cnfを読み込む順序1. mysql.server の起動方法2. mysql...

JS 日付コントロール My97DatePicker の基本的な使い方

My97DatePicker は非常に柔軟で使いやすい日付コントロールです。使い方はとても簡単です。...

マージントップ崩壊現象とその具体的解決策

マージントップの崩壊とはmargin-top の崩壊は、CSS ボックス モデルで発生する現象です。...

HTML ページ出力で従うべきいくつかの原則の要約

1. DOCTYPE は必須です。ブラウザは宣言した DOCTYPE に基づいてページのレンダリング...

JavaScript による省・市連携効果の実現

この記事では、省と都市間の連携効果を実現するためのJavaScriptの具体的なコードを参考までに共...

MySQLの文字セットを変更する方法

1. MySQLの文字セットを確認する '%char%' のような変数を表示します。...

JConsoler を使って Tomcat の JVM メモリを監視する方法を説明します

目次1. Tomcatを監視する方法2. Java独自の監視コマンド3. Tomcatのトラブルシュ...

Web フォントの読み込みを最適化する方法をご存知ですか?

タイトル通りです!一般的に使用される font-family はブラウザの組み込みフォントを読み込み...

Reactはルーティングを使用してログインインターフェースにリダイレクトします

前回の記事では、webpack と react 環境を設定した後、ログイン インターフェースとその後...

スタックメニューを実装するためのjQueryプラグイン

jQueryプラグインの毎日の積み重ねメニュー、参考までに、具体的な内容は次のとおりです。スタックメ...

Vue+element ui はアンカーの配置を実現します

この記事では、アンカー配置を実現するためのVue +要素UIの具体的なコードを例として紹介します。具...