首页 >web前端 >js教程 >如何使用 ES6 高效地从 JavaScript 对象中选择属性?

如何使用 ES6 高效地从 JavaScript 对象中选择属性?

Patricia Arquette
Patricia Arquette原创
2024-12-18 01:46:09156浏览

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