Javascript 如何从对象数组中删除属性
我有一个具有Javascript 如何从对象数组中删除属性,javascript,arrays,object,Javascript,Arrays,Object,我有一个具有name和age属性的对象数组: [ {姓名:“马修”,年龄:23}, {姓名:“詹姆斯”,年龄:20}, {姓名:“丹尼尔”,年龄:25}, {姓名:“约书亚”,年龄:22} ] 我想从所有对象中删除age属性,并像在控制台中一样打印 [ {name:“Matthew”}, {姓名:“詹姆斯”}, {名字:“丹尼尔”}, {姓名:“约书亚”} ] 迭代数组并使用delete关键字 let数组=[ {姓名:“马修”,年龄:23}, {姓名:“詹姆斯”,年龄:20}, {姓名:“丹
name
和age
属性的对象数组:
[
{姓名:“马修”,年龄:23},
{姓名:“詹姆斯”,年龄:20},
{姓名:“丹尼尔”,年龄:25},
{姓名:“约书亚”,年龄:22}
]
我想从所有对象中删除age
属性,并像在控制台中一样打印
[
{name:“Matthew”},
{姓名:“詹姆斯”},
{名字:“丹尼尔”},
{姓名:“约书亚”}
]
迭代数组并使用delete
关键字
let数组=[
{姓名:“马修”,年龄:23},
{姓名:“詹姆斯”,年龄:20},
{姓名:“丹尼尔”,年龄:25},
{姓名:“约书亚”,年龄:22}
]
forEach(函数(v){delete v.age});
console.log(数组)代码>您可以使用map
功能来实现这一点
let output=test.map({name})=>({name}))代码>
如果要使用多个对象进行筛选,可以在name
之后添加,如{name,salary}
var测试=[
{姓名:“马修”,年龄:23},
{姓名:“詹姆斯”,年龄:20},
{姓名:“丹尼尔”,年龄:25},
{姓名:“约书亚”,年龄:22}
];
让output=test.map(({name})=>({name}));
log(JSON.stringify(output,null,2))代码>这样我们就遇到了一个问题,如果数组对象有其他键,并且开发人员不想删除其他键,而只想删除“age”属性。你的解决方案将失败。
const newData = oldData.map(item=>({name:item.name}))