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 相关文章推荐
用javascript实现的支持lrc歌词的播放器
May 17 Javascript
js调用iframe实现打印页面内容的方法
Mar 04 Javascript
php结合imgareaselect实现图片裁剪
Jul 05 Javascript
用svg制作富有动态的tooltip
Jul 17 Javascript
Jquery实现弹性滑块滑动选择数值插件
Aug 08 Javascript
jquery使用on绑定a标签无效 只能用live解决
Jun 02 Javascript
Node.js+Express+MySql实现用户登录注册功能
Jul 10 Javascript
Node.js学习之地址解析模块URL的使用详解
Sep 28 Javascript
vue.js实现只能输入数字的输入框
Oct 19 Javascript
开发Node CLI构建微信小程序脚手架的示例
Mar 27 Javascript
javascript用defineProperty实现简单的双向绑定方法
Apr 03 Javascript
vue 自定义的组件绑定点击事件
Apr 21 Vue.js
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
WINDOWS服务器安装多套PHP的另类解决方案
2006/10/09 PHP
论坛头像随机变换代码
2006/10/09 PHP
PHP批量采集下载美女图片的实现代码
2013/06/03 PHP
mysql_connect localhost和127.0.0.1的区别(网络层阐述)
2015/03/26 PHP
PHP中的多种加密技术及代码示例解析
2016/10/20 PHP
PHP递归获取目录内所有文件的实现方法
2016/11/01 PHP
PHP实现的基于单向链表解决约瑟夫环问题示例
2017/09/30 PHP
解决AJAX中跨域访问出现'没有权限'的错误
2008/08/20 Javascript
jquery判断单个复选框是否被选中的代码
2009/09/03 Javascript
显示今天的日期js代码(阳历和农历)
2014/09/30 Javascript
JavaScript实现文本框中默认显示背景图片在获得焦点后消失的方法
2015/07/01 Javascript
Javascript随机标签云代码实例
2016/06/21 Javascript
jQuery+koa2实现简单的Ajax请求的示例
2018/03/06 jQuery
解决vue点击控制单个样式的问题
2018/09/05 Javascript
JavaScript常见事件对象与操作实例总结
2019/01/05 Javascript
解决微信小程序调用moveToLocation失效问题【超简单】
2019/04/12 Javascript
微信小程序开发之map地图组件定位并手动修改位置偏差
2019/08/17 Javascript
vue之延时刷新实例
2019/11/14 Javascript
vue中使用elementUI组件手动上传图片功能
2019/12/13 Javascript
vue实例的选项总结
2020/06/09 Javascript
jquery实现简易验证插件封装
2020/09/13 jQuery
用Python中的__slots__缓存资源以节省内存开销的方法
2015/04/02 Python
python3简单实现微信爬虫
2015/04/09 Python
python PIL模块与随机生成中文验证码
2016/02/27 Python
python获取Pandas列名的几种方法
2019/08/07 Python
Windows 下python3.8环境安装教程图文详解
2020/03/11 Python
JAVA及PYTHON质数计算代码对比解析
2020/06/10 Python
Matplotlib配色之Colormap详解
2021/01/05 Python
python 指定源路径来解决import问题的操作
2021/03/04 Python
CSS3自定义滚动条样式 ::webkit-scrollbar的示例代码详解
2020/06/01 HTML / CSS
党的群众路线教育实践活动个人整改措施
2014/10/27 职场文书
2015年七七事变78周年纪念活动方案
2015/05/06 职场文书
贫民窟的百万富翁观后感
2015/06/09 职场文书
爱护环境建议书
2015/09/14 职场文书
2019自荐信该如何写呢?
2019/07/05 职场文书
css3属性选择器 “~”(波浪号) “,”(逗号) “+”(加号)和 “>”(大于号)
2022/04/19 HTML / CSS