经常我们有这样的需要,比如有一个对象数组,我们要把这个数组里某个对象删除掉,根据他的某一个key的value来删除
可以使用 JavaScript 的 filter()
方法来删除对象数组中指定 key 下 value 的对象。
例如,你可以使用下面的代码来删除对象数组中 age
属性为 18 的对象:
var objects = [
{ name: "Alice", age: 18 },
{ name: "Bob", age: 20 },
{ name: "Charlie", age: 18 },
];
objects = objects.filter(function(object) {
return object.age !== 18;
});
console.log(objects);
// [{ name: "Bob", age: 20 }]
封装成函数
function removeObjects(objects, key, value) {
return objects.filter(function(object) {
return object[key] !== value;
});
}
console.log(removeObjects(objects, "age", 18));
// [{ name: "Bob", age: 20 }]