更新时间:2025-04-08 14:03:01
在JavaScript开发中,处理数组时经常会遇到重复数据的问题。今天给大家分享10种优雅的数组去重方法,快来收藏吧!😎
第一种:利用Set对象,简洁高效!`[...new Set(arr)]` 🎯
第二种:通过filter结合indexOf实现去重。`arr.filter((item, index) => arr.indexOf(item) === index)` 🧐
第三种:结合Map对象,判断是否存在重复值。`arr.filter(item => !map.has(item) && map.set(item, true))` 📊
第四种:使用reduce方法。`arr.reduce((acc, cur) => acc.includes(cur) ? acc : [...acc, cur], [])` 🔄
第五种:手写一个递归函数,趣味性十足。🔥
第六种:ES6新特性——扩展运算符与includes结合。`[...new Set(arr.filter(item => !acc.includes(item)))]` 💡
第七种:利用对象键值对存储已存在的元素。📚
第八种:排序后相邻比较法,适合数值型数组。`arr.sort().filter((item, index) => item !== arr[index - 1])` ✍️
第九种:借助第三方库lodash的uniq方法。🌟
最后一招:自定义比较函数,满足特殊场景需求。🎯
掌握这些技巧,让你的代码更优雅!💪