首頁 >web前端 >js教程 >如何使用 ES6 高效率地從 JavaScript 物件中選擇屬性?

如何使用 ES6 高效率地從 JavaScript 物件中選擇屬性?

Patricia Arquette
Patricia Arquette原創
2024-12-18 01:46:09235瀏覽

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

如何使用ES6 從物件中選擇屬性

在ES6 中,JavaScript 提供了幾種從物件中簡潔選擇特定屬性的方法方式。

使用解構

一種方法是使用解構,它允許您在一行中將特定屬性分配給變數:

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

使用參數解構

一個更精簡的解決方案是使用參數解構,消除對顯式v 的需要參數:

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

使用Object.assign()

為了獲得更大的靈活性,您可以使用Object.assign()建立具有所選屬性的新物件:

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

保留財產屬性

如果需要保留原有的屬性屬性(可配置、getters、setters),可以使用:

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

以上是如何使用 ES6 高效率地從 JavaScript 物件中選擇屬性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn