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 性能优化指南(3)
May 21 Javascript
文本框的字数限制功能jquery插件
Nov 24 Javascript
node.js中的socket.io的广播消息
Dec 15 Javascript
jQuery实现的个性化返回底部与返回顶部特效代码
Oct 30 Javascript
80%应聘者都不及格的JS面试题
Mar 21 Javascript
vue使用vue-cli快速创建工程
Jul 28 Javascript
浅谈VUE单页应用首屏加载速度优化方案
Aug 28 Javascript
基于jQuery ztree实现表格风格的树状结构
Aug 31 jQuery
React Hooks的深入理解与使用
Nov 12 Javascript
微信小程序实现左右列表联动
May 19 Javascript
Vue 实现复制功能,不需要任何结构内容直接复制方式
Nov 09 Javascript
如何利用javascript接收json信息并进行处理
Aug 06 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
Bo-Blog专用的给Windows服务器的IIS Rewrite程序
2007/08/26 PHP
JSON在PHP中的应用介绍
2012/09/08 PHP
php中file_get_contents与curl性能比较分析
2014/11/08 PHP
php实现微信公众平台账号自定义菜单类
2014/12/02 PHP
smarty表格换行实例
2014/12/15 PHP
PHP SOCKET编程详解
2015/05/22 PHP
PHP使用curl_multi实现并发请求的方法示例
2018/04/29 PHP
PHP获取HTTP body内容的方法
2018/12/31 PHP
五段实用的js高级技巧
2011/12/20 Javascript
纯css+js写的一个简单的tab标签页带样式
2014/01/28 Javascript
《JavaScript函数式编程》读后感
2015/08/07 Javascript
js判断移动端是否安装某款app的多种方法
2015/12/18 Javascript
JS函数arguments数组获得实际传参数个数的实现方法
2016/05/28 Javascript
利用jQuery实现CheckBox全选/全不选/反选的简单代码
2016/05/31 Javascript
bootstrap模态框消失问题的解决方法
2016/12/02 Javascript
JS实现根据密码长度显示安全条功能
2017/03/08 Javascript
vue 刷新之后 嵌套路由不变 重新渲染页面的方法
2018/09/13 Javascript
Vue表单输入绑定的示例代码
2018/11/01 Javascript
在vue中获取微信支付code及code被占用问题的解决方法
2019/04/16 Javascript
深入探索VueJS Scoped CSS 实现原理
2019/09/23 Javascript
微信小程序自定义头部导航栏(组件化)
2019/11/15 Javascript
如何在selenium中使用js实现定位
2020/08/18 Javascript
vue 解决provide和inject响应的问题
2020/11/12 Javascript
使用Python的Scrapy框架十分钟爬取美女图
2016/12/26 Python
对Python中内置异常层次结构详解
2018/10/18 Python
python for循环输入一个矩阵的实例
2018/11/14 Python
python调试神器PySnooper的使用
2019/07/03 Python
Python内存管理实例分析
2019/07/10 Python
对django后台admin下拉框进行过滤的实例
2019/07/26 Python
大专生工程监理求职信
2013/10/04 职场文书
大学生推广普通话演讲稿
2014/09/21 职场文书
2015年家长学校工作总结
2015/04/22 职场文书
九九重阳节致辞
2015/07/31 职场文书
生产实习心得体会范文
2016/01/22 职场文书
Python识别花卉种类鉴定网络热门植物并自动整理分类
2022/04/08 Python
Redis Lua脚本实现ip限流示例
2022/07/15 Redis