我想知道如何从我的数组中删除boats
。
var obj = [
{ car: 1, boat: 2, plane: 3 },
{ car: 3, boat: 9, plane: 12 }
];
// Desired output
[
{ car: 1, plane: 3 },
{ car: 3, plane: 12 }
];
我尝试使用Array.prototype.filter()
console.log(obj.filter(el => el (how to get el name) === 'boat'));
答案 0 :(得分:0)
你没有从数组中删除元素;相反,你想要从现有对象中删除属性,这些对象恰好是数组元素。
使用delete
运算符从对象中删除属性。由于您没有从数组中删除元素,因此您无需使用filter
:
for( var i = 0; i < obj.length; i++ ) {
delete obj[i]['boat'];
}
答案 1 :(得分:0)
删除它
v2/v2[2]
## [1] -2 1
答案 2 :(得分:0)
如果要创建新阵列而不是修改现有阵列:
var obj = [
{ car: 1, boat: 2, plane: 3 },
{ car: 3, boat: 9, plane: 12 }
];
var newArr = obj.map(e => ({car: e.car, plane: e.plane}));
// newArr = [{car: 1, plane: 3},{car: 3, plane: 12}]