📌  相关文章
📜  按 id 从数组中删除对象 - TypeScript (1)

📅  最后修改于: 2023-12-03 15:10:08.293000             🧑  作者: Mango

按 id 从数组中删除对象 - TypeScript

在 TypeScript 中,我们可以使用 Array 类型来定义一个数组。数组中可以存储任意类型的数据,包括对象。如果我们想从数组中删除一个对象,可以按照以下步骤进行操作:

步骤
  1. 找到要删除的对象在数组中的位置。

    在 TypeScript 中,我们可以使用 Array 类型的 findIndex 方法来查找对象在数组中的位置。这个方法接受一个回调函数作为参数,用于判断对象是否符合要求。如果回调函数返回 true,则表示找到了符合要求的对象。

    const arr: { id: number, name: string }[] = [
        { id: 1, name: "Alice" },
        { id: 2, name: "Bob" },
        { id: 3, name: "Charlie" }
    ];
    
    const index = arr.findIndex((item) => item.id === 2); // 找到 id 为 2 的对象在数组中的位置
    
  2. 删除对象。

    在 TypeScript 中,我们可以使用 Array 类型的 splice 方法来删除数组中的元素。这个方法接受两个参数,第一个参数指定要删除的元素在数组中的位置,第二个参数可选,用于指定要删除的元素个数。

    const arr: { id: number, name: string }[] = [
        { id: 1, name: "Alice" },
        { id: 2, name: "Bob" },
        { id: 3, name: "Charlie" }
    ];
    
    const index = arr.findIndex((item) => item.id === 2); // 找到 id 为 2 的对象在数组中的位置
    arr.splice(index, 1); // 删除 id 为 2 的对象
    
  3. 完整代码。

    const arr: { id: number, name: string }[] = [
        { id: 1, name: "Alice" },
        { id: 2, name: "Bob" },
        { id: 3, name: "Charlie" }
    ];
    
    const index = arr.findIndex((item) => item.id === 2); // 找到 id 为 2 的对象在数组中的位置
    arr.splice(index, 1); // 删除 id 为 2 的对象
    
    console.log(arr); // 输出 [{ id: 1, name: "Alice" }, { id: 3, name: "Charlie" }]
    
总结

在 TypeScript 中按照 id 从数组中删除对象,需要先找到要删除的对象在数组中的位置,然后使用 splice 方法删除对象。这个过程可以用 findIndex 方法和数组下标来实现。