js数组去重的方法

js数组去重有一下三种方法:

1、在原数组中,使用splice把数组中重复的元素删除,完成去重

var arr=[1,2,3,4,1,2,1,3,4,6,8,7,5,4,7,3];
for(var i=0 ; i<arr.length ; i++){
	var item=arr[i];
	for(var j=i+1 ; j<arr.length ; j++){
		if(item===arr[j]){
			arr.splice(j,1);
			j--;
		}
	}
}

2、把原数组中不同的元素各挑选出一个,放入新数组中,完成去重

var arr=[1,2,3,4,1,2,1,3,4,6,8,7,5,4,7,3];
var arr1=[];
for(var i=0 ; i<arr.length ; i++){
	var item=arr[i];
	var bool=true;
	for(var j=0 ; j<arr1.length ; j++){
		if(arr1[j]===item){
		bool=false;
		break;
		}
	}
	if(bool){
		arr1.push(item);
	}
}

3、使用indexOf在新数组中查找有无这个元素,如果得到-1,说明没有这个元素,把这个元素放入新数组中,循环完成去重

var arr=[1,2,3,4,1,2,1,3,4,6,8,7,5,4,7,3];
var arr1=[];
for(i=0 ; i<arr.length ; i++){
	if(arr1.indexOf(arr[i])===-1){
		arr1.push(arr[i]);
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值