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

如何筛选所有汽车共有的颜色?已尝试多方法未成功

解决方案:筛选所有汽车共有的颜色

核心思路是从候选颜色数组里,挑出那些每一辆汽车的颜色列表都包含的颜色,用filter+every就能轻松实现,不需要复杂的嵌套处理:

实现代码

const color = ['green','red']
const cars = [
  {id:1, colors: ['green']},
  {id:2, colors: ['green','red']},
  {id:3, colors: ['blue','green']}
]

const colorsThatEveryCarHave = color.filter(c => {
  // 检查当前颜色是否存在于每一辆车的colors数组中
  return cars.every(car => car.colors.includes(c))
})

console.log(colorsThatEveryCarHave) // 输出: ['green']

代码解释

  • color.filter(c):遍历候选颜色数组,对每个颜色做条件校验
  • cars.every(car => car.colors.includes(c)):用every方法验证所有汽车是否都包含当前颜色——只有当所有车都满足时,这个颜色才会被保留到结果数组里

边界情况测试(无共有颜色)

如果候选颜色里没有所有汽车都包含的颜色,会返回空数组:

const color = ['red','blue']
const cars = [
  {id:1, colors: ['green']},
  {id:2, colors: ['green','red']},
  {id:3, colors: ['blue','green']}
]

const colorsThatEveryCarHave = color.filter(c => cars.every(car => car.colors.includes(c)))
console.log(colorsThatEveryCarHave) // 输出: []

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 21:04:56