js在数组中删除重复的元素自保留一个(两种实现思路)


Posted in Javascript onAugust 22, 2014

例如:var student = [‘qiang','ming','tao','li','liang','you','qiang','tao'];

第一种思路是:遍历要删除的数组arr, 把元素分别放入另一个数组tmp中,在判断该元素在arr中不存在才允许放入tmp中

用到两个函数:for ...in 和 indexOf()

<script type="text/javascript"> 
var student = ['qiang','ming','tao','li','liang','you','qiang','tao'];
function unique(arr){
// 遍历arr,把元素分别放入tmp数组(不存在才放)
var tmp = new Array();
for(var i in arr){
//该元素在tmp内部不存在才允许追加
if(tmp.indexOf(arr[i])==-1){
tmp.push(arr[i]);
}
}
return tmp;
}

</script>

第二种思路是:把目标数组arr的元素值和键的位置调换 自动就把重复的元素给删除掉了,调换后的样子:array('qiang'=>1,'ming'=>1,'tao'=>1)

<script type="text/javascript">
var student = ['qiang','ming','tao','li','liang','you','qiang','tao'];
function unique(arr){
var tmp = new Array();

for(var m in arr){
tmp[arr[m]]=1;
}
//再把键和值的位置再次调换
var tmparr = new Array();

for(var n in tmp){
tmparr.push(n);
}
return tmparr;
}
</script>
Javascript 相关文章推荐
jQuery Ajax之load()方法
Oct 12 Javascript
网页前台通过js非法字符过滤代码(骂人的话等等)
May 26 Javascript
jQuery+ajax实现鼠标单击修改内容的方法
Jun 27 Javascript
javascript中数组的定义及使用实例
Jan 21 Javascript
jquery操作select方法汇总
Feb 05 Javascript
使用Chart.js图表库制作漂亮的响应式表单
Oct 28 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
Feb 02 Javascript
JavaScript简单获取页面图片原始尺寸的方法
Jun 21 Javascript
vue2笔记 — vue-router路由懒加载的实现
Mar 03 Javascript
使用live-server快速搭建本地服务器+自动刷新的方法
Mar 09 Javascript
vue 项目软键盘回车触发搜索事件
Sep 09 Javascript
vue-cli4使用全局less文件中的变量配置操作
Oct 21 Javascript
js获取input长度并根据页面宽度设置其大小及居中对齐
Aug 22 #Javascript
js使用正则实现ReplaceAll全部替换的方法
Aug 22 #Javascript
IE浏览器IFrame对象内存不释放问题解决方法
Aug 22 #Javascript
js中实现多态采用和继承类似的方法
Aug 22 #Javascript
js中运算符&amp;&amp; 和 || 的使用记录
Aug 21 #Javascript
字段太多jquey快速清空表单内容方法
Aug 21 #Javascript
jQuery .tmpl() 用法示例介绍
Aug 21 #Javascript
You might like
简单的php文件上传(实例)
2013/10/27 PHP
在Mac OS上搭建PHP的Yii框架及相关测试环境
2016/02/14 PHP
IIS 7.5 asp Session超时时间设置方法
2017/04/17 PHP
用Jquery实现可编辑表格并用AJAX提交到服务器修改数据
2009/12/27 Javascript
js如何设置在iframe框架中指定div不显示
2013/12/04 Javascript
常常会用到的截取字符串substr()、substring()、slice()方法详解
2015/12/16 Javascript
Immutable 在 JavaScript 中的应用
2016/05/02 Javascript
轻松实现js弹框显示选项
2016/09/13 Javascript
JavaScript中关键字 in 的使用方法详解
2016/10/17 Javascript
在vue2.0中引用element-ui组件库的方法
2018/06/21 Javascript
在SSM框架下用laypage和ajax实现分页和数据交互的方法
2019/09/27 Javascript
40行代码把Vue3的响应式集成进React做状态管理
2020/05/20 Javascript
Javascript实现单选框效果
2020/12/09 Javascript
python实现的简单窗口倒计时界面实例
2015/05/05 Python
Python基础中所出现的异常报错总结
2016/11/19 Python
python实现下载整个ftp目录的方法
2017/01/17 Python
python使用matplotlib模块绘制多条折线图、散点图
2020/04/26 Python
python多线程下信号处理程序示例
2019/05/31 Python
Python实现Selenium自动化Page模式
2019/07/14 Python
pytorch使用指定GPU训练的实例
2019/08/19 Python
python中struct模块之字节型数据的处理方法
2019/08/27 Python
细说CSS3中box属性中的overflow-x属性和overflow-y属性值的效果
2014/07/21 HTML / CSS
英国名牌服装购物网站:OD’s Designer
2019/09/02 全球购物
大专生的学习自我评价
2013/12/04 职场文书
素食餐饮项目创业计划书
2014/02/02 职场文书
办公室文员自荐书
2014/02/03 职场文书
先进工作者获奖感言
2014/02/08 职场文书
电厂职工自我鉴定
2014/02/20 职场文书
小学亲子活动总结
2014/07/01 职场文书
小学生放飞梦想演讲稿
2014/08/26 职场文书
医院2014国庆节活动策划方案
2014/09/21 职场文书
2019个人半年工作总结
2019/06/21 职场文书
JS数组的常用方法整理
2021/03/31 Javascript
sql注入教程之类型以及提交注入
2021/08/02 MySQL
Windows11插耳机没反应怎么办? win11耳机没声音的多种解决办法
2021/11/21 数码科技
九大龙王魂骨,山龙王留下躯干骨,榜首死的最憋屈(被捏碎)
2022/03/18 国漫