ホームページ >ウェブフロントエンド >jsチュートリアル >ES6 でオブジェクト プロパティをキーでフィルタリングする方法は?
ES6 でのキーによるオブジェクト プロパティのフィルタリング
JavaScript では、多くの場合、特定の基準に基づいてオブジェクト プロパティをフィルタリングする必要があります。 ES6 は、スプレッド演算子を通じてこれを達成するクリーンで効率的な方法を提供します。
問題:
次のようなオブジェクトが与えられたとします:
{ item1: { key: 'sdfd', value: 'sdfd' }, item2: { key: 'sdfd', value: 'sdfd' }, item3: { key: 'sdfd', value: 'sdfd' } }
目標次のような特定のキーを持つプロパティのみを含む新しいオブジェクトを作成することです。
{ item1: { key: 'sdfd', value: 'sdfd' }, item3: { key: 'sdfd', value: 'sdfd' } }
解決策:
ES6 では、組み合わせを使用してオブジェクト プロパティをフィルタリングできます。 Object.keys() メソッドと Array.filter() メソッドを実行し、その後に Array.reduce() メソッドを実行して新しいオブジェクトを作成します。
提供されたコードは、このアプローチを示しています。
const raw = { item1: { key: 'sdfd', value: 'sdfd' }, item2: { key: 'sdfd', value: 'sdfd' }, item3: { key: 'sdfd', value: 'sdfd' } }; const allowed = ['item1', 'item3']; const filtered = Object.keys(raw) .filter(key => allowed.includes(key)) .reduce((obj, key) => { obj[key] = raw[key]; return obj; }, {}); console.log(filtered);
このコード:
以上がES6 でオブジェクト プロパティをキーでフィルタリングする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。