匹配字符串跟数组中存在相同值,并取出数组中的对应元素

2018-01-31阅读(6519)评论(0)牵着狗狗看MM

苏州实时公交查询

字符串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)

赞(0)
转载请注明来源:Web前端(W3Cways.com) - Web前端学习之路 » 匹配字符串跟数组中存在相同值,并取出数组中的对应元素
分享到: 更多 (0)