You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular中如何通过id过滤或移除对象数组中的指定元素

Angular 按多个id过滤对象数组实现方案

你需要的功能可以直接使用JavaScript原生数组方法实现,无需依赖Angular额外API,两种常用写法如下:

  • 基础写法(数据量较小时使用)
    将需要排除的id整理为数组,配合filter+includes实现过滤:
// 定义要排除的id列表
const excludeIds = [5, 12, 9];
// 过滤得到新数组,不会修改原数据源
let newArr = data.filter(item => !excludeIds.includes(item.id));
  • 性能优化写法(数据量较大时使用)
    用Set存储要排除的id,查找效率更高,适合数据量过百的场景:
// Set的has方法时间复杂度为O(1),远高于数组includes的O(n)
const excludeIdSet = new Set([5, 12, 9]);
let newArr = data.filter(item => !excludeIdSet.has(item.id));

注意如果你的id字段为字符串类型,需要保证排除列表的元素和id类型一致,或者做统一类型转换后再判断,比如改为!excludeIds.includes(Number(item.id))即可。

内容的提问来源于stack exchange,提问作者user16619763

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 09:54:02