我有这样的对象:
let origObj = {
name: 'John',
surname: 'Doe',
age: 23,
gender: 'M'
}
我想创建一个具有属性的新对象,在数组中设置
let fieldsList = ['name', 'gender'];
新对象可能如下所示:
newObj = {
name: 'John',
gender: 'M'
}
我回答了下面的问题,但也许您有更好的解决方案来解决这个问题,例如:使用ES6还是别的什么?
答案 0 :(得分:0)
您可以使用array#reduce
。
let origObj = {
name: 'John',
surname: 'Doe',
age: 23,
gender: 'M'
}
let fieldsList = ['name', 'gender'];
var newObject = fieldsList.reduce((obj,prop) => {
return obj[prop]= origObj[prop], obj
} ,{});
console.log(newObject);