字符串strA 和数组arrB,要找出arrB中id符合strA的值,并生成一个新的数组
let strA = "1,2,3,4,5"; let arrB = [{ "id": "2", "name": "小王" }, { "id": "5", "name": "小明" }, { "id": "8", "name": "小红" }, { "id": "11", "name": "小点" }, { "id": "15", "name": "小赵" }, { "id": "22", "name": "小小" }, ]
从性能上考虑,这里就不用循环嵌套循环的方法去做了
let obj = {}; for(let i in arrB){ obj[arrB[i].id] = arrB[i]; } let strArr = strA.split(','); let newArr = []; for(let item of strArr){ if(obj[item]){ newArr.push(obj[item]); } } console.log(newArr)