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 1.0.2
Oct 11 Javascript
Array的push与unshift方法性能比较分析
Mar 05 Javascript
jQuery学习总结之元素的相对定位和选择器(持续更新)
Apr 26 Javascript
使用jquery实现简单的ajax
Jul 08 Javascript
JQuery为页面Dom元素绑定事件及解除绑定方法
Apr 23 Javascript
JavaScript表格常用操作方法汇总
Apr 15 Javascript
JavaScript识别网页关键字并进行描红的方法
Nov 09 Javascript
Javascript原型链的原理详解
Jan 05 Javascript
Bootstrap多级导航栏(级联导航)的实现代码
Mar 08 Javascript
javascript与jquery动态创建html元素示例
Jul 25 Javascript
基于jPlayer三分屏的制作方法
Dec 21 Javascript
vue-cli单页应用改成多页应用配置详解
Jul 14 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的ob_start() 控制您的浏览器cache
2009/08/03 PHP
php发送与接收流文件的方法
2015/02/11 PHP
php实现以只读方式打开文件的方法
2015/03/16 PHP
一波PHP中cURL库的常见用法代码示例
2016/05/06 PHP
利用PHP获取网站访客的所在地位置
2017/01/18 PHP
laravel5.4生成验证码的实例讲解
2017/08/05 PHP
Yii框架响应组件用法实例分析
2019/09/04 PHP
JavaScript 学习笔记(十二) dom
2010/01/21 Javascript
JavaScript类和继承 constructor属性
2010/03/04 Javascript
用apply让javascript函数仅执行一次的代码
2010/06/27 Javascript
javascript代码加载优化方法
2011/01/30 Javascript
jquery禁止输入数字以外的字符的示例(纯数字验证码)
2014/04/10 Javascript
用unescape反编码得出汉字示例
2014/04/24 Javascript
JS实现的生成随机数的4个函数分享
2015/02/11 Javascript
JavaScript中setMonth()方法的使用详解
2015/06/11 Javascript
模拟javascript中的sort排序(简单实例)
2016/08/17 Javascript
浅析vue数据绑定
2017/01/17 Javascript
js仿小米手机上下滑动效果
2017/02/05 Javascript
Vue波纹按钮组件制作
2018/04/30 Javascript
浅谈一个webpack构建速度优化误区
2019/06/24 Javascript
vue 解决computed修改data数据的问题
2019/11/06 Javascript
koa-passport实现本地验证的方法示例
2020/02/20 Javascript
pymssql ntext字段调用问题解决方法
2008/12/17 Python
将Django使用的数据库从MySQL迁移到PostgreSQL的教程
2015/04/11 Python
初步认识Python中的列表与位运算符
2015/10/12 Python
基于Python如何使用AIML搭建聊天机器人
2016/01/27 Python
Python中规范定义命名空间的一些建议
2016/06/04 Python
Python实现屏幕截图的两种方式
2018/02/05 Python
Tensorflow 自定义loss的情况下初始化部分变量方式
2020/01/06 Python
全网最细 Python 格式化输出用法讲解(推荐)
2021/01/18 Python
利用CSS的Sass预处理器(框架)来制作居中效果
2016/03/10 HTML / CSS
英国领先的露营和露营车品牌之一:OLPRO
2019/08/06 全球购物
为您搜罗全球潮流時尚品牌:HBX
2019/12/04 全球购物
美术毕业生求职信
2014/02/25 职场文书
2014年科室工作总结
2014/11/20 职场文书
MySQL千万级数据表的优化实战记录
2021/08/04 MySQL