let arr = [{name:"张三"},{name:"张三"},{name:"王五"},{name:"王五"}];
// 方法一
function unique(arr, key) {
const map = new Map()
return arr.filter((item) => !map.has(item[key] + '') && map.set(item[key] + '', 1))
}
// 方法二
function unique2(arr) {
const map = new Map()
return arr.filter( item =>!map.has(JSON.stringify(item)) && map.set(JSON.stringify(item), 1))
}
console.log(unique(arr,"name"));
console.log(unique2(arr));
ES6 Map 两种方法对象数组去重
最新推荐文章于 2025-08-01 22:41:19 发布
本文对比了两种JavaScript中使用Map实现数组去重的方法,一是通过key为对象属性名,二是通过JSON.stringify处理对象。展示了如何利用Map高效地过滤重复项,并提供两个实用函数示例。

925

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



