Problem:
Wie kann man eine Funktion schreiben, die Wählt in ES6 auf prägnanteste Weise bestimmte Eigenschaften eines Objekts aus?
Initial Lösung:
Der folgende Ansatz verwendet Destrukturierung und ein vereinfachtes Objektliteral, um dies zu erreichen:
(v) => { let { id, title } = v; return { id, title }; }
Verbesserte Lösung:
A Mithilfe von Parametern kann eine effizientere Lösung erreicht werden, die auch die Wiederholung von Eigenschaftsnamen eliminiert Destrukturierung:
({id, title}) => ({id, title})
Diese Lösung bietet eine prägnantere Alternative unter Beibehaltung der gewünschten Funktionalität.
Alternative Ansätze:
function pick(o, ...props) { var has = p => o.propertyIsEnumerable(p), get = p => Object.getOwnPropertyDescriptor(o, p); return Object.defineProperties({}, Object.assign({}, ...props .filter(prop => has(prop)) .map(prop => ({prop: get(props)}))) ); }
Das obige ist der detaillierte Inhalt vonWie extrahiere ich bestimmte Eigenschaften präzise aus einem Objekt in ES6?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!