数组去重的N种方法

243 阅读1分钟

以前就想写这一块内容了,因为自己奇懒无比所以一直就是能拖就拖了,之前有说过,我是六月离职的然后,因为自己要走所以需要为自己找一个填坑的人,面试的时候我最经常问的问题就是请说说数组去重,对就是这个神奇有无聊的问题,这是一道很常见的前端面试题,很多人答上来,没答上来的也有,怎么说呢啥样的都有。也有一些说的思路是我不曾知道的。所以我这次就梳理一下前端常用的数组去重的N种方法,如果你对这篇文章感兴趣的话,就让我们一起往下面看吧。

1.es6的Set实现一行代码去重


2.es6的filter和indexOf()结合实现去重


3.第三种是循环遍历结合indexOf就是判断薪数组里面有没有这个元素没有就push进去,有就不push


4.是利用了reduce每次会有一个操作返回值的特性


5.利用对象的唯一性


以上这几种方法都只适用于数组格式是Array<string>类型,不适合Array<Object>类型。也就是数组对象如果想用上述办法去重是做不到的。

5.数组对象的类型去重也就是key和value是一样的就去重,不是所有数组对象的格式是{key:value}我再想想