Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.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_Json - Fatal编程技术网

Javascript 从对象数组中删除一个属性

Javascript 从对象数组中删除一个属性,javascript,json,Javascript,Json,我想从对象数组中删除一个属性 "[{"name":"vv","age":"12","id":"123"},{"name":"v2","age":"13","id":"123"},{"name":"v3","age":"123","id":"124"}]" 我想从我的输出应该是的数组中删除age属性 [{"name":"vv","id":"123"},{"name":"v2","id":"123"},{"name":"v3","id":"124"}]" 如果要更新现有阵列(使用) va

我想从对象数组中删除一个属性

"[{"name":"vv","age":"12","id":"123"},{"name":"v2","age":"13","id":"123"},{"name":"v3","age":"123","id":"124"}]"  
我想从我的输出应该是的数组中删除age属性

[{"name":"vv","id":"123"},{"name":"v2","id":"123"},{"name":"v3","id":"124"}]" 

如果要更新现有阵列(使用)

var arr=[{“name”:“vv”,“age”:“12”,“id”:“123”},{“name”:“v2”,“age”:“13”,“id”:“123”},{“name”:“v3”,“age”:“123”,“id”:“124”}];
arr.forEach((item)=>删除item.age);

控制台日志(arr)以防要更新现有阵列(使用)

var arr=[{“name”:“vv”,“age”:“12”,“id”:“123”},{“name”:“v2”,“age”:“13”,“id”:“123”},{“name”:“v3”,“age”:“123”,“id”:“124”}];
arr.forEach((item)=>删除item.age);

控制台日志(arr)
您可以使用
array.map
解构
rest

var arr=[{“name”:“vv”,“age”:“12”,“id”:“123”},{“name”:“v2”,“age”:“13”,“id”:“123”},{“name”:“v3”,“age”:“123”,“id”:“124”}];
arr=arr.map(({age,…rest})=>rest);

控制台日志(arr)
您可以使用
array.map
解构
rest

var arr=[{“name”:“vv”,“age”:“12”,“id”:“123”},{“name”:“v2”,“age”:“13”,“id”:“123”},{“name”:“v3”,“age”:“123”,“id”:“124”}];
arr=arr.map(({age,…rest})=>rest);

控制台日志(arr)您可以使用删除属性。
var数组=[{name:“vv”,age:“12”,id:“123”},{name:“v2”,age:“13”,id:“123”},{name:“v3”,age:“123”,id:“124”};
forEach(o=>Reflect.deleteProperty(o,'age'));

console.log(数组)您可以使用删除属性。
var数组=[{name:“vv”,age:“12”,id:“123”},{name:“v2”,age:“13”,id:“123”},{name:“v3”,age:“123”,id:“124”};
forEach(o=>Reflect.deleteProperty(o,'age'));

console.log(数组)试试这个:

var jsonString='[{“name”:“vv”,“age”:“12”,“id”:“123”},{“name”:“v2”,“age”:“13”,“id”:“123”},{“name”:“v3”,“age”:“123”,“id”:“124”}];
var jsonObj=JSON.parse(jsonString);
jsonObj.map(obj=>{
删除obj.age;
返回obj;
});

console.log(jsonObj)试试这个:

var jsonString='[{“name”:“vv”,“age”:“12”,“id”:“123”},{“name”:“v2”,“age”:“13”,“id”:“123”},{“name”:“v3”,“age”:“123”,“id”:“124”}];
var jsonObj=JSON.parse(jsonString);
jsonObj.map(obj=>{
删除obj.age;
返回obj;
});


console.log(jsonObj)在这种情况下速度非常慢且效率非常低,因为可以修改原始阵列,因此无需创建所有内容的全新副本。完美解决方案在这种情况下速度非常慢且效率非常低,因为可以修改原始阵列,因此,无需创建所有内容的全新副本。完美解决方案澄清一点(以防不明显)-这将改变原始数组及其包含的对象。@vlaz-我知道这就是为什么我没有在任何地方重新分配。哦,我同意此解决方案。它快速、直接、高效。我只是想澄清一下,以防有人不明白确切的含义。@vlaz-我已经更新了我的答案,详细阐述了这两种情况。希望它现在能澄清。不幸的是,我不能给你更多的支持票:)澄清一点(以防万一它不明显)-这将改变原始数组和其中包含的对象。@vlaz-我知道这就是为什么我没有在任何地方重新分配。哦,我同意这个解决方案。它快速、直接、高效。我只是想澄清一下,以防有人不明白确切的含义。@vlaz-我已经更新了我的答案,详细阐述了这两种情况。希望它现在能澄清。不幸的是,我不能给你超过一票:)@veeresh我尝试这个答案为什么使用jQuery而不是原生的
JSON.parse()
?@vlaz你对我的评价是多少answers@veeresh我试着回答为什么使用jQuery而不是原生的
JSON.parse()
?@vlaz您对我的答案的评价是多少
var arr='[{"name":"vv","age":"12","id":"123"},{"name":"v2","age":"13","id":"123"},{"name":"v3","age":"123","id":"124"}]';

var JSON_ARRAY= JSON.parse(arr);

JSON_ARRAY.forEach( function (arrayItem)
 {
     delete arrayItem.age;
 });