Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mengekstrak Sifat Objek secara Selektif dalam ES6?

Bagaimana untuk Mengekstrak Sifat Objek secara Selektif dalam ES6?

Linda Hamilton
Linda Hamiltonasal
2024-12-17 11:12:26506semak imbas

How to Selectively Extract Object Properties in ES6?

Satu pelapis untuk Mengambil Sifat Tertentu daripada Objek dalam ES6

S: Bagaimanakah anda boleh mengekstrak atribut tertentu sahaja daripada objek dalam cara ringkas menggunakan ES6?

J: Berikut adalah beberapa pendekatan:

Pendekatan Paling Padat:

Menggunakan pemusnahan parameter untuk mengelakkan penggunaan pembolehubah parameter:

({id, title}) => ({id, title})

Pendekatan Umum:

Kaedah ini menggunakan Object.assign dan sifat dikira untuk mencapai sifat yang lebih umum penyelesaian:

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

Memelihara Atribut Harta:

Jika anda perlu mengekalkan atribut sifat, seperti kebolehkonfigurasian, pengambil dan penetap, sementara tidak termasuk bukan- sifat terbilang, gunakan pendekatan ini:

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)})))
    );
}

Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak Sifat Objek secara Selektif dalam ES6?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn