js两个数组A与B的某个值相等后,取出他们的值组成新的数组?
现在有两个数组A与B,A的id如果和B的cid相同的话,我想取出A的id和B的其他字段组成新的数组
数组如图:
新数组如图:
求大佬改怎么写?
回答:
按zangeci
说的,不要只贴图,不方便回答的人调试。
let a = [{id:1},{id:2}];let b = [{cid:1, des:"1"},{cid:1, des:"11"},{cid:2, des:"2"}];
let c = a.map(item=>{
return {
...item,
list: b.filter(it=>it['cid'] === item['id'])
}
})
回答:
const newObj = a.filter(item=>{ const list = b.filter(it => {
it.title = 'title的内容'
it.txt = 'txt的内容'
return it.cid === item.id
})
item.list = list
return list.length
})
这样操作原始的数组a和数组b也会改变,如果不想改变,就把数组a和数组b深拷贝下来在做处理
以上是 js两个数组A与B的某个值相等后,取出他们的值组成新的数组? 的全部内容, 来源链接: utcz.com/p/933096.html