Javascript 从对象数组中拾取数据并返回新对象
因此,我:Javascript 从对象数组中拾取数据并返回新对象,javascript,arrays,node.js,object,Javascript,Arrays,Node.js,Object,因此,我: "people": [ { "first": "Linda", "last": "Donson", "salary": "4000USD" }, { "first": "Mark", "las
"people": [
{
"first": "Linda",
"last": "Donson",
"salary": "4000USD"
},
{
"first": "Mark",
"last": "Sullivan",
"salary": "3500USD"
},
];
现在,我想将其转换为一个新的对象数组,只包含所需的数据集。
例如:
"people": [
{
"first": "Linda",
"salary": "4000USD"
},
{
"first": "Mark",
"salary": "3500USD"
},
];
我该怎么做?因此,它应该取出“last”
键及其值,只返回“first”
和“last”
谢谢您可以使用映射功能获得具有所需选项的新阵列
var source=[{first:'first1',last1:'last1',property1:'p1-1'},{first:'first2',last2:'last2',property1:'p1-2'}];
var mapped=source.map(函数(e){
返回{first:e.first,property1:e.property1}
})
log('mapped:',mapped)
您可以使用forEach
var peoples = [{
"first": "Linda",
"last": "Donson",
"salary": "4000USD"
},
{
"first": "Mark",
"last": "Sullivan",
"salary": "3500USD"
},
];
// empty array
var newPeoples = [];
peoples.forEach((people) => {
// only push desired object inside empty array
newPeoples.push({
"first": people.first,
"salary": people.salary
});
});
// desired array of objects
console.log(newPeoples);
这实际上是一个简单的单行程序,通过
map
和delete
或map
和ES6解构
,如下面的两个示例所示:
var数据=[{
“第一”:“琳达”,
“last”:“Donson”,
“工资”:“4000美元”
},
{
“第一”:“标记”,
“最后”:“沙利文”,
“工资”:“3500美元”
}
]
console.log(data.map(x=>delete(x.salary)&&x))
请显示您的尝试。删除对象中的属性并不难研究,在对象数组上循环和复制对象也是如此。Stackoverflow不是免费的代码编写服务。这里的目标是让其他人帮助您修复代码。即使你只解决了一部分问题,而其余部分没有按预期工作,这将表明你付出了一些努力,这可能会重复感谢,这在ES6中会是什么样子?对于ES6也是一样的,map是一种数组原型方法,你可以使用箭头函数!