Objekteigenschaften nach Schlüssel in ES6 filtern
In JavaScript ist es häufig erforderlich, Objekteigenschaften nach bestimmten Kriterien zu filtern. ES6 bietet eine saubere und effiziente Möglichkeit, dies durch Spread-Operatoren zu erreichen.
Problem:
Angenommen ein Objekt wie:
{ item1: { key: 'sdfd', value: 'sdfd' }, item2: { key: 'sdfd', value: 'sdfd' }, item3: { key: 'sdfd', value: 'sdfd' } }
Das Ziel besteht darin, ein neues Objekt zu erstellen, das nur Eigenschaften mit bestimmten Schlüsseln enthält, z als:
{ item1: { key: 'sdfd', value: 'sdfd' }, item3: { key: 'sdfd', value: 'sdfd' } }
Lösung:
ES6 ermöglicht es uns, Objekteigenschaften mithilfe einer Kombination der Methoden Object.keys() und Array.filter() zu filtern. gefolgt von der Array.reduce()-Methode zum Erstellen des neuen Objekts.
Der bereitgestellte Code demonstriert diesen Ansatz:
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);
In dieser Code:
Das obige ist der detaillierte Inhalt vonWie filtere ich Objekteigenschaften nach Schlüssel in ES6?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!