博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用JavaStcript对数组元素去重的方法
阅读量:5311 次
发布时间:2019-06-14

本文共 656 字,大约阅读时间需要 2 分钟。

  在做javascript开发的时候,经常会遇到数组元素重复的问题,而javascript Array又没有直接提供方法解决此问题,还需要自己去实现。

方案一:

思路:

1.构建一个新的数组存放结果;

2.for循环中每次从原数组中取出一个元素,用这个元素循环与结果数组对比;

3.若结果数组中没有该元素,则存到结果数组中。

代码如下:

结果如下:

 

方案二:

(比方案一效率要高)

思路:

1.先将原数组进行排序

2.检查原数组中的第i个元素 与 结果数组中的最后一个元素是否相同,因为已经排序,所以重复元素会在相邻位置

3.如果不相同,则将该元素存入结果数组中

代码如下:

结果如下:

第二种方法也会有一定的局限性,因为在去重前进行了排序,所以最后返回的去重结果也是排序后的。如果要求不改变数组的顺序去重,那这种方法便不可取了。

 

方案三(推荐的方案)

思路:

1.创建一个新的数组存放结果

2.创建一个空对象

3.for循环时,每次取出一个元素与对象进行对比,如果这个元素不重复,则把它存放到结果数组中,同时把这个元素的内容作为对象的一个属性,并赋值为1,存入到第2步建立的对象中。

说明:至于如何对比,就是每次从原数组中取出一个元素,然后到对象中去访问这个属性,如果能访问到值,则说明重复。

代码如下:

结果如下:

 

 

 

 

 

参考:http://www.jb51.net/article/46154.htm

转载于:https://www.cnblogs.com/shenxiaolin/p/5388843.html

你可能感兴趣的文章
在Xcode中编辑运行 Python 脚本
查看>>
bzoj1015:[JSOI2008]星球大战starwar
查看>>
Java HashMap和Hashtable的区别
查看>>
开机不登陆系统自动启动Vmware虚拟机(系统服务)
查看>>
线程相关函数(4)-pthread_mutex_lock(), pthread_mutex_unlock() 互斥锁
查看>>
学习新技术的 10 个建议
查看>>
浅谈Web网站架构演变过程
查看>>
css实现下拉菜单
查看>>
Spark Streaming事务处理彻底掌握
查看>>
数据的重要性
查看>>
解决合并检验反写收料通知单有小数的问题
查看>>
poj 2823单调队列模板题
查看>>
Linux内核配置浅析
查看>>
day 37 数据库MySQL的进一步认识
查看>>
python doc格式转文本格式
查看>>
SQL之经典SQL语句大全
查看>>
Autowired注解
查看>>
网络对抗技术 实验五
查看>>
Oracle init.ora常用配置详解
查看>>
SOME USEFUL MACHINE LEARNING LIBRARIES.
查看>>