Heim > Web-Frontend > js-Tutorial > Wie wähle ich mit ES6 effizient Eigenschaften aus einem JavaScript-Objekt aus?

Wie wähle ich mit ES6 effizient Eigenschaften aus einem JavaScript-Objekt aus?

Patricia Arquette
Freigeben: 2024-12-18 01:46:09
Original
150 Leute haben es durchsucht

How to Efficiently Select Properties from a JavaScript Object Using ES6?

So wählen Sie Eigenschaften eines Objekts mit ES6 aus

In ES6 bietet JavaScript mehrere Methoden zum prägnanten Auswählen bestimmter Eigenschaften eines Objekts Art und Weise.

Destrukturierung verwenden

Ein Ansatz ist die Verwendung Destrukturierung, mit der Sie Variablen in einer einzigen Zeile bestimmte Eigenschaften zuweisen können:

({ id, title }) => ({ id, title });
Nach dem Login kopieren

Verwenden der Parameterdestrukturierung

Eine noch schlankere Lösung ist die Verwendung der Parameterdestrukturierung. Eliminierung der Notwendigkeit eines expliziten v-Parameters:

({id, title}) => ({id, title});
Nach dem Login kopieren

Using Object.assign()

Für mehr Flexibilität können Sie Object.assign() verwenden, um ein neues Objekt mit den ausgewählten Eigenschaften zu erstellen:

function pick(o, ...props) {
    return Object.assign({}, ...props.map(prop => ({[prop]: o[prop]})));
}
Nach dem Login kopieren

Eigenschaft beibehalten Attribute

Wenn Sie die ursprünglichen Eigenschaftsattribute (konfigurierbar, Getter, Setter) beibehalten müssen, können Sie dies tun verwenden:

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(prop)})))
    );
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie wähle ich mit ES6 effizient Eigenschaften aus einem JavaScript-Objekt aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage