JS基于开关思想实现的数组去重功能【案例】
作者:庚中 时间:2024-04-17 10:31:02
本文实例讲述了JS基于开关思想实现的数组去重功能。分享给大家供大家参考,具体如下:
场景: 比如给你一个数组var Arr = [ 25, 70, 60, 70, 65, 65, 80 ]
,最终要得到去重后的新数组[25,70,60,65,80].
思路:
1.先定义个空的新数组newArr;
2.遍历旧数组Arr 中所有元素;
3.定义一个isZai变量表示开关,默认为false状态;
4.遍历新数组所有元素与旧数组元素比较(Arr[ i ] == newArr[ j ]
);
5.如果该元素存在于新数组中,则改变开关状态为true;
6.根据开关状态实现需求:如果开关为false状态,则将旧数组的元素添加到新数组中;
7.最后打印新数组
js代码如下
<script>
var Arr = [ 25, 70, 60, 70, 65, 65, 80 ];//最终得到[25,70,60,65,80]
//1.先定义个空的新数组newArr;
var newArr=[];
//2.遍历旧数组Arr 中所有元素;
for(var i=0;i<=Arr.length;i++){
//3.定义一个isZai变量表示开关,默认为false状态;
var isZai=false;
for(var j=0;j<=newArr.length;j++){
// 4.遍历新数组所有元素与旧数组元素比较(Arr[ i ] == newArr[ j ]);
if(Arr[ i ] == newArr[ j ]){
//5.如果该元素存在于新数组中,则改变开关状态为true;
isZai=true;//假设被推翻
break;//一旦重复后面没有比较必要
}
}
// 6.根据开关状态实现需求:如果开关为false状态,则将旧数组的元素添加到新数组中;
if(isZai==false){
newArr[newArr.length]=Arr[i];
}
}
console.log ( newArr )//打印新数组[25,70,60,65,80]
</script>
使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码,可得如下运行结果:
希望本文所述对大家JavaScript程序设计有所帮助。
来源:https://blog.csdn.net/xiaodi520520/article/details/82952458
标签:JS,开关思想,数组去重
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Pandas之缺失数据的实现
2022-05-04 19:00:05
![](https://img.aspxhome.com/file/2023/9/115099_0s.png)
Python基础教程之异常详解
2022-02-08 05:48:49
![](https://img.aspxhome.com/file/2023/9/80629_0s.png)
讲解SQL Server数据库的触发器安全隐患
2009-01-13 14:01:00
基于网格的网页设计概念及实际应用案例
2010-03-30 14:59:00
![](https://img.aspxhome.com/file/UploadPic/20103/30/1052570-42s.jpg)
MySQL运行状况查询方式介绍
2024-01-26 03:54:52
![](https://img.aspxhome.com/file/2023/7/124887_0s.gif)
Tensorflow中tf.ConfigProto()的用法详解
2022-01-12 03:33:25
Python实现双X轴双Y轴绘图的示例详解
2021-10-17 17:33:58
![](https://img.aspxhome.com/file/2023/8/93598_0s.png)
Python如何避免文件同名产生覆盖
2021-02-05 21:16:34
![](https://img.aspxhome.com/file/2023/4/85364_0s.png)
MySQL8.0无法远程连接访问的解决方法
2024-01-19 02:55:54
![](https://img.aspxhome.com/file/2023/4/97434_0s.png)
js实现调用网络摄像头及常见错误处理
2024-05-11 09:32:30
![](https://img.aspxhome.com/file/2023/1/126171_0s.png)
面试官问订单ID是如何生成的?难道不是MySQL自增主键
2024-01-24 00:36:24
![](https://img.aspxhome.com/file/2023/3/129923_0s.jpg)
详解python UDP 编程
2023-06-11 22:31:44
![](https://img.aspxhome.com/file/2023/5/59825_0s.png)
使用Python发送各种形式的邮件的方法汇总
2022-12-21 15:24:46
python绘制散点图并标记序号的方法
2023-12-22 09:59:49
![](https://img.aspxhome.com/file/2023/7/115877_0s.jpg)
浅析MySQL的WriteSet并行复制
2024-01-18 04:28:11
![](https://img.aspxhome.com/file/2023/6/121536_0s.jpg)
python操作MySQL数据库的方法分享
2024-01-13 16:11:54
cnpm不是内部命令的解决方案:配置环境变量【推荐】
2023-03-11 13:27:47
![](https://img.aspxhome.com/file/2023/5/131925_0s.jpg)
手工打造极酷的分离式滑动门导航菜单
2009-05-25 20:11:00
![](https://img.aspxhome.com/file/UploadPic/20095/25/mt1-26s.gif)
python如何把嵌套列表转变成普通列表
2023-08-20 14:28:19
python+unittest+requests实现接口自动化的方法
2022-04-10 08:47:38
![](https://img.aspxhome.com/file/2023/3/65123_0s.png)