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

如何筛选出包含指定size值的嵌套sizeStock数组对应的商品

原代码问题

  • forEach仅做遍历没有返回值,内层对sizeStock执行filter得到的结果没有被用来做商品筛选的判断条件
  • 你不需要过滤sizeStock本身,只需要判断当前商品的sizeStock中是否存在size=40的条目,用存在判断逻辑更合适

正确实现

使用数组的filter方法筛选商品,搭配some方法判断嵌套数组的匹配条件即可:

const filteredProducts = products.filter(product => 
  product.sizeStock.some(item => item.size === 40)
)

逻辑说明

  • 外层filter会遍历所有商品,返回所有满足判断条件的商品对象组成的新数组
  • 内层some会遍历当前商品的sizeStock数组,只要有一个条目满足size === 40就返回true,当前商品就会被保留到结果数组中

用你提供的示例数据执行后,filteredProducts中将仅包含id为2的商品,符合需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 08:57:01