1. JS 数据取交集、并集、差集
const arr1 = [1,2,3,4,5],
arr2 = [5,6,7,8,9];
// 交集
let intersection = arr1.filter(function (val) {
return arr2.indexOf(val) > -1 })
// 并集
let union = arr1.concat(arr2.filter(function (val) {
return !(arr1.indexOf(val) > -1) }))
// 补集 两个数组各自没有的集合
let complement = arr1.filter(function (val) {
return !(arr2.indexOf(val) > -1) })
.concat(arr2.filter(function (val) {
return !(arr1.indexOf(val) > -1) }))
// 差集 数组arr1相对于arr2所没有的
let diff = arr1.filter(function (val) {
return arr2.indexOf(val) === -1 })