Js のいくつかの一般的な配列トラバーサル メソッド

配列トラバーサル

1. forEach()

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

    配列内の各要素に対して実行される関数で、1 ~ 3 個の引数を取ります。

    currentValue処理中の配列内の現在の要素。

    index処理中のオプションの配列内の現在の要素のインデックス。

    arrayオプションの配列自体。

  • thisArgオプション

    オプションのパラメーター。コールバック関数実行callback時値として使用されますthis

 let arr = [1,2,3,4,5]
        arr.forEach(function(value,index){
    
    
            arr[index] +=1;
        })
        console.log(arr); //输出 [2,3,4,5,6]
		

2.マップ()

新しい配列を作成します。各要素は、配列内の各要素を呼び出して、提供された関数を実行します。

  • forEach と map の違い

    forEach() メソッドは実行結果を返しませんが、未定義です。

    つまり、 forEach() は元の配列を変更します。map() メソッドは新しい配列を取得して返します。

3. 一部()

複数の要素が条件を満たしている限り配列をトラバースし、true を返し、それ以外の場合は false を返し、ループを終了します。

arr.some(callback(element[, index[, array]])[, thisArg])

4.every()

配列を反復処理し、要素が条件を満たす場合は true を返し、そうでない場合は false を返します。

5. for…in

主にオブジェクトをトラバースするために使用されます。for() の形式: key はfor(key in obj){}、obj オブジェクトの各キーと値のペアのキーを表します

6. for…of

var arr = ['a', 'b', 'c', 'd'];

        for (let a in arr) {
    
    
          console.log(a); // 0 1 2 3
        }

        for (let a of arr) {
    
    
          console.log(a); // a b c d
        }

上記のコードは、**for...in ループがキー名を読み取り、for...of ループがキー値を読み取ることを示しています。** for...of ループを介して配列のインデックスを取得する場合は、配列インスタンスの entry メソッドと keys メソッドを使用できます。

for...in ループにはいくつかの欠点があります
  。 ① 配列のキー名は数字ですが、for...in ループは "0"、"1"、"2" などのキー名として文字列を使用します。
  ② for...in ループは数値キー名だけでなく、手動で追加された他のキー (プロトタイプ チェーンのキーを含む) もトラバースします。
  ③場合によっては、for...in ループが任意の順序でキー名をトラバースします。
  for...in ループは、主にオブジェクトのトラバース用に設計されており、配列のトラバース用ではありません。

for...of ループには、
  for...in と同じ簡潔な構文がありますが、for...in の欠点はありません。
  forEach メソッドとは異なり、break、continue、return で使用できます。
  すべてのデータ構造をトラバースするための統一された操作インターフェースを提供します

おすすめ

転載: blog.csdn.net/m0_46893049/article/details/125757802