这是我的代码
var array = [{ id: 1, name: 'test' }, { id: 2, name: 'test2' }];
我需要将上面的数组改为如下所示
[{ name: 'test' }, { name: 'test2' }]
我尝试删除
array.forEach(function(arr, i) {
delete array[i].id;
});
console.log(array);
输出为
[ { id: 1, name: 'test' },
{ id: 2, name: 'test2'} ]
但它不会删除id
项。如何删除数组对象项?
我在节点 v0.8 中使用它。
答案 0 :(得分:2)
删除id
属性 ,可以通过以下方式证明:
for (var l in array[0]) {
if (array[0].hasOwnProperty(l)) {
console.log(array[0][l]);
}
}
请参阅jsFiddle
node.js
输出的屏幕截图:
答案 1 :(得分:0)
嗯,这是你的jQuery 1.9.1代码,它运行良好:http://jsfiddle.net/8GVQ9/
var array = [{ id: 1, name: 'test' }, { id: 2, name: 'test2' }];
array.forEach(function(arr, i) {
delete array[i].id;
});
console.log(array);
顺便说一句,你想从数组中的对象中删除'property'Id-更好地理解你。
答案 2 :(得分:0)
你必须解析数组并构建新版本然后替换它。
var array = [{ id: 1, name: 'test' }, { id: 2, name: 'test2' }];
var tempArray = [];
for(var i = 0; i < array.length; i++)
{
tempArray.push({name : array[i].name});
}
array = tempArray;