、js 数组删除指定对象
时间: 2023-10-09 12:14:29 浏览: 155
在 JavaScript 中,你可以使用 `filter()` 方法来删除数组中的指定对象。你可以通过提供一个回调函数作为参数来实现这个目的。回调函数将被应用于数组的每个元素,并且返回值为 `true` 的元素将被保留在新数组中,而返回值为 `false` 的元素将被过滤掉。
下面是一个示例代码,展示了如何删除数组中的指定对象:
```javascript
const arr = [
{ id: 1, name: 'John' },
{ id: 2, name: 'Jane' },
{ id: 3, name: 'Bob' }
];
const removeObject = { id: 2, name: 'Jane' };
const newArr = arr.filter(item => item.id !== removeObject.id);
console.log(newArr);
```
在上述代码中,我们定义了一个包含多个对象的数组 `arr`。然后,我们定义了一个要删除的对象 `removeObject`。我们使用 `filter()` 方法和箭头函数来过滤掉数组中与 `removeObject` 的 `id` 属性相等的对象。最后,我们将结果存储在 `newArr` 变量中,并打印输出结果。
在控制台中的输出将是:
```
[
{ id: 1, name: 'John' },
{ id: 3, name: 'Bob' }
]
```
如此一来,我们成功地从数组中删除了指定的对象。
相关问题
js 删除数组中指定对象名
要删除JavaScript数组中的特定对象,可以使用splice()方法。该方法可以删除数组中的元素,并在需要时添加新元素。以下是删除数组中特定对象的步骤:
1. 遍历数组,找到要删除的对象的索引。
2. 使用splice()方法删除该对象。
下面是一个示例代码:
```
let arr = [{name: "obj1"}, {name: "obj2"}, {name: "obj3"}];
let index = -1;
for(let i=0; i<arr.length; i++){
if(arr[i].name === "obj2"){
index = i;
break;
}
}
if(index !== -1){
arr.splice(index, 1);
}
console.log(arr); // [{name: "obj1"}, {name: "obj3"}]
```
在上面的代码中,我们遍历数组并找到了名为“obj2”的对象的索引。然后,我们使用splice()方法删除该对象。最后,我们打印出修改后的数组。
js 删除数组中指定对象的属性的值
你可以使用 JavaScript 的 `delete` 关键字来删除数组中指定对象的属性值。以下是一个示例代码:
```javascript
const arr = [
{ id: 1, name: 'Alice', age: 25 },
{ id: 2, name: 'Bob', age: 30 },
{ id: 3, name: 'Charlie', age: 35 }
];
const targetId = 2; // 要删除的对象的 id
// 找到目标对象的索引
const targetIndex = arr.findIndex(obj => obj.id === targetId);
if (targetIndex !== -1) {
// 删除目标对象的 age 属性
delete arr[targetIndex].age;
}
console.log(arr);
```
在上面的示例中,我们有一个包含多个对象的数组 `arr`。我们想删除 `id` 为 2 的对象的 `age` 属性。首先,我们使用 `findIndex` 方法找到目标对象的索引。如果找到了目标对象,则使用 `delete` 关键字删除该对象的 `age` 属性。最后,我们打印出修改后的数组。
注意,这只是删除了属性的值,而不是完全删除属性。如果你想要完全删除属性,你可以使用 `delete` 关键字删除整个属性,例如 `delete arr[targetIndex].age`。
阅读全文