谈谈下数组去重的方法

##在我们前端的学习中经常要用到数组的一些方法,比如数组去重,现在我们就来简单的看下有哪些方法能够实现
1.Set 集合es6中新增数据类型

var arr=[1,1,22,3,3,4]
newArr=[...new Set(arr)]
console.log(newArr); //[1,22,3,4]
``

2.冒泡法实现数组去重

var arr=[1,1,22,3,3,4]
 arr.sort(function(a,b){
     return a-b
 })  //数组排序目的是把相同的元素放到一起
var newArr=[]
for(var i = 0;i<arr.length;i++){
 if(arr[i]!=arr[i+1]){
     newArr.push(arr[i])
 }
}
console.log(newArr);//[1,3,4,22]

3.对象法数组去重
原理:对象的属性名不能重复

 var arr=[1,1,22,3,3,4]
var obj={}//声明空对象
var newArr=[]//声明空数组
for(var i = 0;i<arr.length;i++){
  if(obj[arr[i]]==undefined){  //属性名不存在则取出undifined
     newArr.push(arr[i])
     obj[arr[i]]=1 //对象的赋值
  }
}
console.log(newArr);//[1,22,3,4]

还有一些方法就不一一列举了,欢迎大佬补充

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值