Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从对象数组中删除属性_Javascript_Arrays_Object - Fatal编程技术网

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}))