質問:
次のようなオブジェクトの配列があるとします:
var jsObjects = [ {a: 1, b: 2}, {a: 3, b: 4}, {a: 5, b: 6}, {a: 7, b: 8} ];
3 番目のオブジェクト ({a: 5, b: 6}) for...in ループを使用せず、b などの特定のプロパティの値のみに基づいていますか?
答え:
Array.prototype.filter() メソッドは、この問題に対する洗練された解決策を提供します。これにより、指定された条件に基づいて配列をフィルターし、一致する要素のみを含む新しい配列を返すことができます。
b プロパティの値に基づいてオブジェクトの配列をフィルターするには、次のコードを使用できます。 :
var result = jsObjects.filter(obj => { return obj.b === 6 })
このコードでは、フィルター関数はオブジェクトを入力として受け取り、その b プロパティが 6 に等しいかどうかをチェックします。条件が満たされる場合、オブジェクトは結果に含まれます。 array.
出力:
結果の配列には次の要素が含まれます:
[{a: 5, b: 6}]
このメソッドは、最小限のコードで目的のオブジェクトを効果的に取得します。配列を反復処理する必要もありません。
以上が配列内の JavaScript オブジェクトをプロパティ値で検索する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。