JavaScript でのプロパティベースのフィルタリングを使用した配列内のオブジェクトの検索
質問:
指定オブジェクトの配列。特定のプロパティとその値に基づいてオブジェクトを検索および抽出するにはどうすればよいですか?
入力:
<code class="javascript">var Obj = [ {"start": 0, "length": 3, "style": "text"}, {"start": 4, "length": 2, "style": "operator"}, {"start": 4, "length": 3, "style": "error"} ];</code>
出力:
「start」プロパティが 4 に等しいオブジェクトをすべて検索します。 望ましい結果:
<code class="javascript">var result = [ {"start": 4, "length": 2, "style": "operator"}, {"start": 4, "length": 3, "style": "error"} ];</code>
解決策:
これにより、JavaScript 配列の filter() 関数を利用できます。 filter() 関数は引数としてコールバック関数を受け取り、それが配列内の各要素に適用されます。この関数は、要素を新しい配列に含めるべきかどうかを示すブール値を返します。
この場合、「start」プロパティが 4 に等しいすべてのオブジェクトを含めたいと考えています。その方法は次のとおりです。
<code class="javascript">var result = Obj.filter(x => x.start === 4);</code>
これにより、フィルタ条件を満たすオブジェクトのみを含む、result という新しい配列が作成されます。この例では、結果は次のようになります:
<code class="javascript">[ {"start": 4, "length": 2, "style": "operator"}, {"start": 4, "length": 3, "style": "error"} ]</code>
以上が特定のプロパティ値に基づいて JavaScript 配列内のオブジェクトをフィルタリングする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。