数组去重在工作中是避免不了需要用到的地方,面试过程中也有很大可能概率会遇到,市面上那么多可以实现的方法,那么该用哪一个呢,而哪些是最优的解决方案。下面来看一下?(不强求用哪一个方法,适合自己的就是最好的)
定义一个新数组并存放原数组的第一个元素,然后将元素组一一和新数组的元素对比,若不同则存放在新数组中。
性能较低,胜在稳定,但是不推荐
将原数组排序,在与相邻的进行比较,如果不同则存入新数组。
跟上面的效率差不了多少,在现在追求代码代码量少并且要实现功能的需求下,类似这种方法并不推荐
利用对象属性不能重复的特性,如果没有该属性则存入新数组。
数组去重的方法有问题,极其不稳定,不建议用
利用数组的indexOf方法
适用性不强,不适应多类型数组
includes方法
es6中的方法,推荐(这个方法可用场景非常多且稳定,很nice,前提是浏览器支持es6)
filter 和 includes方法组合使用
容错率高且稳定,对性能没有影响,同样浏览器要支持es6
splice 方法
麻烦,强烈不推荐
下次再更。。。。
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!