动态对象解构

我试图找出一种基于属性名称的动态列表/数组来解构对象的方法。

说,我有一个对象:

let individual = {
    id: 1,
    fullname: 'User Name',
    sex: 'M',
    birthdate: new Date(1975, 3, 15)
};

和一个带有属性名称的动态数组:

let properties = ['id', 'fullname','sex'];

有没有办法简单地获取仅具有数组中指定属性的结果对象:

{
    id: 1,
    fullname: 'User Name',
    sex: 'M'
}

回答

我不确定它是否可以通过解构来完成,但它可以通过几个函数来完成。

let individual = {
  id: 1,
  fullname: 'User Name',
  sex: 'M',
  birthdate: new Date(1975, 3, 15)
};
let properties = ['id', 'fullname','sex'];

let result = Object.fromEntries(properties.map(prop => [prop, individual[prop]]));

console.log(result);


以上是动态对象解构的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>