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

JavaScript对比3个数组匹配主数组获取正确组合的实现问题

问题原因
  • 字段映射错误:A数组存储功耗值,对应result的x_powerConsumption字段,你的代码中错误匹配了x_size字段;B数组存储尺寸值,对应result的x_size字段,你的代码中错误匹配了x_powerConsumption字段。
  • 匹配逻辑错误:你用some遍历整个result数组做匹配,会筛选出A、B中所有在result里出现过的项,直接取索引0的话拿到的是A、B数组本身的第一个匹配项,不是同一条result记录对应的关联值,因此出现跨记录的错误组合。
修复代码

如果你需要的是result第一条记录对应的组合,直接指定匹配该条记录的对应字段即可:

// 取目标result记录,这里取第一条符合你预期输出的组合
const targetItem = result[0];
// 修正字段映射关系
let newArray = A.filter(o1 => o1.label === targetItem.x_powerConsumption);
let newArray2 = B.filter(o1 => o1.label === targetItem.x_size);
this.setState({
  selectedVarientOne: newArray[0].label, 
  selectedVarientTwo: newArray2[0].label
})

如果不需要从A、B数组中捞取完整对象,直接从result取值效率更高:

const targetItem = result[0];
this.setState({
  selectedVarientOne: targetItem.x_powerConsumption, 
  selectedVarientTwo: targetItem.x_size
})

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 03:36:00