Set 方法去除多样数据的面试题
// 多个类型数据的去重利用 filter 和 new Set()
let list = [1, 2, 2, [1, 2],
[1, 2], {
id: 1
}, {
id: 1
},
]
function makeData(arr) {
let set = new Set();
return arr.filter((item) => {
let id = JSON.stringify(item)
if (set.has(id)) {
return false
} else {
set.add(id)
return true
}
})
}
console.log(makeData(list))