JS基于开关思想实现的数组去重功能【案例】
作者:庚中 发布时间:2024-04-17 10:31:02
标签:JS,开关思想,数组去重
本文实例讲述了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


猜你喜欢
- 开始没想到,这10w的数据一个号码一个号码的插入半个小时才2w。后来改进一条SQL批量插入 -- 优化代码之前的 insert into t
- SQL触发器实例1 定义: 何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序。触发器是一
- web2.0教程4:如何调用css样式表 这些技巧主要讲meta标签设置的,其实与符合web标准关系不大,只要注意在最后加"/&q
- 引言TypeScript 给 JavaScript 添加了一套类型系统,可以在编译期间检查出类型错误,这增加了代码的健壮性,但也多了一个编译
- 最近在工作遇到一个难题。我所在的测试组有一套PC软件前端自动化工程,在进行自动化测试时,需要在一台古老的xp机器上运行,但这台古老的xp机器
- 1. csv文件自带列标题import pandas as pd df_example = pd.read_csv('Pandas_
- 本文帮你六步改善SQL Server安全规划全攻略。一、什么是SQL注入式攻击所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的
- 一、Sql Server中的日期与时间函数 1. 当前系统日期、时间 select getdate() 2. dateadd 在向指定日期加
- 今天分享一下Django实现的简单的文件上传的小例子。步骤 •创建Django项目,创建Django应用 •设计模型&n
- 题目:解法一:比较元素是否相等思路说明:这种应该是普通人最先想到的解法,先获取到数组之后进行有小到大排序,然后初始化一个min=0(代表新数
- 本文实例讲述了python统计cpu利用率的方法。分享给大家供大家参考。具体实现方法如下:#-*-coding=utf-8-*-import
- 阅读上一篇:FrontPage2002简明教程三:网页布局 网页的强大之处就在它的超链接,在浏览器中通过点击网页中的超链接,可以很方便地打开
- 使用python的json模块序列化时间或者其他不支持的类型时会抛异常,例如下面的代码:# -*- coding: cp936 -*-fro
- Django默认情况下,按字母顺序对模型进行排序。因此,Event应用模型的顺序为Epic、EventHero、EventVillain、E
- CURLOPT_RETURNTRANSFER 选项:curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);如
- 本文实例分析了Flask和Django框架中自定义模型类的表名、父类相关问题。分享给大家供大家参考,具体如下:一. Flask和Django
- 假设我们有一个很简单的OTU表:现在对这个表格进行遍历,一般写法为:import pandas as pdotu = pd.read_csv
- 要使用多个定界符拆分字符串:使用 re.split() 方法,例如 re.split(r',|-', my_str)。re.
- 涉及到详情页爬取目录结构:kaoshi_bqg.pyimport scrapyfrom scrapy.spiders import Rule
- 基于 python django源码前期准备安装库:pip install django-haystackpip install whoos