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

React多条件数组过滤问题:如何精准删除指定元素

解决数组过滤范围过大的问题

你的需求是仅移除domain为domain1.com且slug为monitor的元素,正确的过滤逻辑应该是保留所有不满足这个组合条件的元素,可以用两种方式实现:

方式一:取反组合条件

const filteredArray = array.filter(item => !(item.domain === 'domain1.com' && item.slug === 'monitor'));

方式二:逻辑或拆分条件

const filteredArray = array.filter(item => item.domain !== 'domain1.com' || item.slug !== 'monitor');

为什么你之前的写法会导致数组为空?

你用了item.slug !== 'monitor' && item.domain !== 'domain1.com',这个条件要求元素同时满足“slug不是monitor”并且“domain不是domain1.com”——但你的数组里,domain1.com下的monitor-1不满足“domain不是domain1.com”,domain2.com下的monitor不满足“slug不是monitor”,所以所有元素都被过滤掉,结果为空数组。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 23:32:00