依据id keys汇合筛选进去,a的后果
let result = [] let a = [ { id: 1, desc: '我是1' }, { id: 2, desc: '我是1' }, { id: 3, desc: '我是1' }, ] let b = [2, 3]
期待后果
result = [ { id: 2, desc: '我是1' }, { id: 3, desc: '我是1' }, ]
个别是循环套两遍
a.forEach((itme) => { for (let i = 0; i < b.length; i++) { const element = b[i] if (itme.key === element) { this.selectList.push(itme) } } })
能够filter + find;
find如果以后那项不符合条件,返回的是undefined,会被filter当成false,也算一个条件吧:
result = a.filter((v) => {//顺次返回:undefiend 2 3;filter如果是Undefined的后果,就算false,有值就是true console.log(Object.values(b).find((i) => i === v.id)) return Object.values(b).find((i) => i === v.id)})