1.ES5常用:利用for嵌套for,然后splice去重
解析:两个null消失,NaN和{}没有去重
2.ES6常用:Set去重
解析:去重代码少。但是无法去除{}空对象。
3.indexOf去重
解析:NaN、{}没有去重
4.sort()排序
解析:NaN、{}没有去重
5.对象属性不能相同(不建议)
解析:两个true去掉,NaN和{}没有去重
6.includes()
解析:{}没有去重
7.hasOwnProperty
解析:所有都去重
8.filter
解析:{}没有去重、NaN两个都没有了
9.利用递归去重
解析:NaN和{}没有去重
10.Map去重
解析:创建一个空Map数据结构,遍历需要去重的数组,把数组的每一个元素作为key存到Map中。由于Map中不会出现相同的key值,所以最终得到的就是去重后的结果。{}空对象无法去重。
11.reduce+includes
解析:{}无法去重
以上就是JS实现数组去重的11种方法总结的详细内容,更多关于JS数组去重的资料请关注脚本之家其它相关文章!