通过js方法取出两个数组中相同的数据

1.最简单filter加includes

var arr1=[1,2,3,4,5,6,"a","b"]
var arr2=['a','b',1,2]
var arr3=arr1.filter(item=>{
    return arr2.includes(item)
})
console.log(arr3);//[ 1, 2, 'a', 'b' ]
//filter()数组的过滤方法,会返回满足条件的元素组成一个新数组
//includes()方法如果在数组中查到该元素则返回true否则返回false

2.可以用for循环加indexOf加push方法,

对比indexof方法

indexOf方法有两个缺点

一是不够语义化,它的含义是找到参数值的第一个出现位置,所以要去比较是否不等于 -1 ,表达起来不够直观。

二是,它内部使用严格相当运算符( === )进行判断,这会导致对NaN的误判。

Logo

基于 Vue 的企业级 UI 组件库和中后台系统解决方案,为数万开发者服务。

更多推荐