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

通过对比数组ID生成结果数组及独立名称数组

按ID匹配数组元素并提取指定字段

先给出原始的两个数组:

let arr1 = [
  {id:1, name:'hhj'},
  {id:12, name:'ghdgj'},
  {id:5, name:'gd'}
]

let arr2 = [
  {id:1, addr:'fsfhg'},
  {id:8, addr:'rgdh'},
  {id:5, name:'gd'}
]

步骤1:生成按ID匹配的结果数组resultarr

先把arr2里的所有ID提取到Set集合中(提升后续查找效率),再用filter筛选arr1中ID存在于该集合的元素:

// 提取arr2的ID集合
const arr2Ids = new Set(arr2.map(item => item.id));
// 筛选arr1中ID匹配的元素
const resultarr = arr1.filter(item => arr2Ids.has(item.id));

执行后resultarr的结果如下:

[{id:1, name:'hhj'}, {id:5, name:'gd'}]

步骤2:提取resultarr中的name字段生成names数组

用map遍历resultarr,直接取出每个元素的name属性即可:

const names = resultarr.map(item => item.name);

最终names数组为:['hhj', 'gd']

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 15:34:43