📅  最后修改于: 2023-12-03 15:38:41.099000             🧑  作者: Mango
在 TypeScript 中,如果要删除一个对象数组中的某个对象,有几种方法可以使用。以下是其中的两种方式:
可以使用 filter()
方法来过滤掉要删除的对象,从而实现删除效果。
以下是一个示例代码片段:
interface Mongoose {
name: string;
gender: string;
age: number;
}
let mongooses: Mongoose[] = [
{ name: "Tommy", gender: "M", age: 3 },
{ name: "Kitty", gender: "F", age: 5 },
{ name: "Lucky", gender: "M", age: 2 },
];
// 要删除的对象
let toDelete: Mongoose = { name: "Kitty", gender: "F", age: 5 };
mongooses = mongooses.filter((mongoose) => mongoose !== toDelete);
console.log(mongooses); // [ { name: 'Tommy', gender: 'M', age: 3 }, { name: 'Lucky', gender: 'M', age: 2 } ]
在上面的代码中,我们创建了一个 Mongoose
类型的对象数组 mongooses
,并定义了一个要删除的对象 toDelete
。然后,我们使用 filter()
方法过滤掉了要删除的对象,并将结果重新赋值给原来的数组 mongooses
。最后,我们输出了删除对象后的数组。
另外一种方法是使用 splice()
方法来删除指定位置的元素。在 TypeScript 中,你可以使用 splice()
方法来删除对象数组中指定位置的对象。
以下是一个示例代码片段:
interface Mongoose {
name: string;
gender: string;
age: number;
}
let mongooses: Mongoose[] = [
{ name: "Tommy", gender: "M", age: 3 },
{ name: "Kitty", gender: "F", age: 5 },
{ name: "Lucky", gender: "M", age: 2 },
];
// 要删除的对象
let toDelete: Mongoose = { name: "Kitty", gender: "F", age: 5 };
const index = mongooses.findIndex((mongoose) => mongoose === toDelete);
if (index !== -1) {
mongooses.splice(index, 1);
}
console.log(mongooses); // [ { name: 'Tommy', gender: 'M', age: 3 }, { name: 'Lucky', gender: 'M', age: 2 } ]
在上面的代码中,我们也创建了一个 Mongoose
类型的对象数组 mongooses
,并定义了一个要删除的对象 toDelete
。然后,我们使用 findIndex()
方法找到要删除的对象在数组中的索引,并使用 splice()
方法删除掉该对象。最后,我们输出了删除对象后的数组。
以上两种方法可以帮助你在 TypeScript 中删除对象数组中的某个对象。你可以根据实际情况选择适合自己的方法。