建站教程

建站教程

Products

当前位置:首页 > 建站教程 >

JavaScript数组去重的12种方法(三种js数组去重的三种简单方法是什么?)

GG网络技术分享 2025-03-18 16:13 0


JavaScript数组去重的12种方法

数组去重,一般都是在面试的时候才会碰到,一般是要求手写数组去重方法的代码。如果是被提问到,数组去重的方法有哪些?你能答出其中的10种,面试官很有可能对你刮目相看。

在真实的项目中碰到的数组去重,一般都是后台去处理,很少让前端处理数组去重。虽然日常项目用到的概率比较低,但还是需要了解一下,以防面试的时候可能回被问到。

注:写的匆忙,加上这几天有点忙,还没有非常认真核对过,不过思路是没有问题,可能一些小细节出错而已。

数组去重的方法

一、利用ES6 Set去重(ES6中最常用)

二、利用for嵌套for,然后splice去重(ES5中最常用)

三、利用indexOf去重

四、利用sort()

五、利用对象的属性不能相同的特点进行去重(这种数组去重的方法有问题,不建议用,有待改进)

六、利用includes

七、利用hasOwnProperty

八、利用filter

九、利用递归去重

十、利用Map数据结构去重

十一、利用reduce+includes

十二、[…new Set(arr)]

PS:有些文章提到了foreach+indexOf数组去重的方法,个人觉得都是大同小异,所以没有写上去。

编辑:千锋HTML5

作者:沉静地闪光

链接:https://segmentfault.com/a/1190000016418021

三种js数组去重的三种简单方法是什么?

三种js数组去重的三种简单方法是什么?WPMEE小编带大家一起学习。

1、es6Set去重

functionremoval(arr){

returnArray.from(newSet(arr))

}

letarr=[1,2,1,3,4,5,5]

removal(arr)//[1,2,3,4]

2、利用filter

functionremoval(arr){

returnarr.filter((item,index,arr)=>{

returnarr.indexOf(item,0)==index;

})

}

letarr=[1,2,1,3,4,5,5]

removal(arr)//[1,2,3,4]

3、利用reduce

letnewArr=arr.reduce((prev,cur)=>{

prev.indexOf(cur)===-1&&prev.push(cur);

returnprev;

},[]);

标签:

提交需求或反馈

Demand feedback