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))
文章提供了一种解决方案,通过创建Set对象结合Array的filter方法以及JSON.stringify转换元素ID,来去除包含不同类型的数组中的重复数据。主要应用于处理包含基本类型和复杂类型如对象的数组去重问题。
752

被折叠的 条评论
为什么被折叠?



