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

使用JavaScript filter方法实现可选分类筛选,无指定值时返回全部项

列表筛选逻辑优化方案

核心优化思路

利用JavaScript逻辑或的短路执行特性,省略冗余的if分支判断,将筛选逻辑合并为单个表达式,大幅简化代码的同时保持原有逻辑完全一致。

优化后完整代码

let items = [
  {'name':"A",'category':"a"},
  {'name':"B",'category':"b"},
  {'name':"C",'category':"c"}
]
let target;
console.log(items.filter(item => target === undefined || item.category === target));

补充说明

如果你的业务场景中target为null时也属于「未传入分类值、需要返回所有项」的情况,可以将判断条件改为target == null,该判断会同时覆盖undefined和null两种空值场景,适配性更强。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 02:06:05