ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript でオブジェクトの配列から一意の値を効率的に抽出するにはどうすればよいですか?

JavaScript でオブジェクトの配列から一意の値を効率的に抽出するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-09 16:40:12145ブラウズ

How Can I Efficiently Extract Unique Values from an Array of Objects in JavaScript?

JavaScript でオブジェクトの配列から個別の値を効率的に抽出する

JavaScript では、オブジェクトの配列から個別の値を取得することが一般的です。タスク。次のシナリオを考えてみましょう:

var array = [
  { name: "Joe", age: 17 },
  { name: "Bob", age: 17 },
  { name: "Carl", age: 35 }
];

// Desired Result: [17, 35]

この結果を達成するための 1 つのアプローチは、配列を反復処理し、個別の値を格納するための別の配列を維持することです。ただし、この方法は、特に大規模な配列の場合、非効率的になる可能性があります。

ES6/ES2015 以降で利用可能な代替アプローチでは、Set データ構造を利用します。 Set は値の一意のコレクションを提供するため、オブジェクトの目的のプロパティの配列から新しい Set を作成できます。

const uniqueAges = [...new Set(array.map(item => item.age))];

このステートメントは、map() 関数を使用して配列を反復処理し、age プロパティを抽出します。それぞれのオブジェクトから。次に、新しい Set() コンストラクターを使用して、抽出された値から Set を作成します。最後に、拡散演算子 (...) を使用して Set を配列に拡散し、目的の個別の年齢のリスト [17, 35] を生成します。

このアプローチは、反復法と比較して大幅なパフォーマンス上の利点をもたらします。特に大規模なデータセットの場合。これにより、追加のデータ構造が不要になり、必要な反復回数が最小限に抑えられます。

以上がJavaScript でオブジェクトの配列から一意の値を効率的に抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。