使用变量 属性 值从 javascript 数组中删除对象
Delete object from javascript array using variable property value
大家好,javascript 是个新手,希望能为我遇到的这个问题提供一些帮助。基本上我想要做的是从我的数组中删除一个对象。该数组包含这样的对象:y = [{id:group}].
我想使用对象的 ID 删除一个对象,它是第一列。
我试过的是循环遍历数组找到对应的id删除,但是这里的问题是第一列没有标注"id",第一列是id形式(例如 123).
如有任何帮助,我们将不胜感激。
y = [{123:1},{321:2},{234:3}]
id = 123;
for (var i = 0; i < y.length; i++)
if (y[i].id === id) {
y.splice(i,1);
}
//Does not work because the first column of the object is not named "id"
只需检查特定键:
for (var i = 0; i < y.length; i++)
if (key in y[i]) {
y.splice(i,1);
}
}
您可以使用 filter
而不是循环:
var y = [{123:1},{321:2},{234:3}]
var id = 123;
y = y.filter((obj) => !obj.hasOwnProperty(id));
console.log(y);
我使用两个参数(数组,对象的键)创建一个函数
在数组中使用 forEach 方法,我检查并比较给定键(通过参数)与对象中存在的键 elements.If 是真的,然后我使用 splice() 方法删除包含键的对象:
y = [{123:1},{321:2},{234:3}];
function deleteObj(arg,value){
arg.forEach(function(element){
var index=arg.indexOf(element);
if(Object.keys(element)==value.toString()){
arg.splice(index,1);
}
});
}
deleteObj(y,123);
console.log(y);
大家好,javascript 是个新手,希望能为我遇到的这个问题提供一些帮助。基本上我想要做的是从我的数组中删除一个对象。该数组包含这样的对象:y = [{id:group}].
我想使用对象的 ID 删除一个对象,它是第一列。
我试过的是循环遍历数组找到对应的id删除,但是这里的问题是第一列没有标注"id",第一列是id形式(例如 123).
如有任何帮助,我们将不胜感激。
y = [{123:1},{321:2},{234:3}]
id = 123;
for (var i = 0; i < y.length; i++)
if (y[i].id === id) {
y.splice(i,1);
}
//Does not work because the first column of the object is not named "id"
只需检查特定键:
for (var i = 0; i < y.length; i++)
if (key in y[i]) {
y.splice(i,1);
}
}
您可以使用 filter
而不是循环:
var y = [{123:1},{321:2},{234:3}]
var id = 123;
y = y.filter((obj) => !obj.hasOwnProperty(id));
console.log(y);
我使用两个参数(数组,对象的键)创建一个函数 在数组中使用 forEach 方法,我检查并比较给定键(通过参数)与对象中存在的键 elements.If 是真的,然后我使用 splice() 方法删除包含键的对象:
y = [{123:1},{321:2},{234:3}];
function deleteObj(arg,value){
arg.forEach(function(element){
var index=arg.indexOf(element);
if(Object.keys(element)==value.toString()){
arg.splice(index,1);
}
});
}
deleteObj(y,123);
console.log(y);