欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JS删除数组中重复的数字

程序员文章站 2022-06-11 13:01:23
...

思路:

外循环遍历数组中所有的元素arr[i],

内循环遍历当前元素的后面所有的元素arr[j]; 

比较arr[i]和arr[j],如果两者相同,则删除内循环即后面的重复元素删除;

注意使用splice()方法删除数组中的元素时,会使得刚删除的元素的后面的元素补位,而错过比较,所以需要将索引向前移动一位。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			
			//创建一个数组
			var arr = [1,2,3,2,2,1,3,4,2,5];
			
			//去除数组中重复的数字
			//获取数组中的每一个元素
			for(var i=0 ; i<arr.length ; i++){
				//console.log(arr[i]);
				/*获取当前元素后的所有元素*/
				for(var j=i+1 ; j<arr.length ; j++){
					//console.log("---->"+arr[j]);
					//判断两个元素的值是否相等
					if(arr[i] == arr[j]){
						//如果相等则证明出现了重复的元素,则删除j对应的元素
						arr.splice(j,1);
						//当删除了当前j所在的元素以后,后边的元素会自动补位
						//此时将不会在比较这个元素吧,我需要在比较一次j所在位置的元素
						//使j自减
						j--;
					}
				}
			}
			
			console.log(arr);
			
			
		</script>
	</head>
	<body>
	</body>
</html>