JS数组去重与取重的示例代码


Posted in Javascript onJanuary 24, 2014

方法一:去重复数据

<script>
Array.prototype.distinct=function(){
var a=[],b=[];
for(var prop in this){
   var d = this[prop];
   if (d===a[prop]) continue; //防止循环到prototype
   if (b[d]!=1){
    a.push(d);
    b[d]=1;
   }
}
return a;
}
var x=['a','b','c','d','b','a','e','a','b','c','d','b','a','e'];
document.write('原始数组:'+x);
document.write("<br />");
document.write('去重复后:'+x.distinct());
</script>

方法二:取重复数据
<script type="text/javascript">
Array.prototype.distinct=function(){
   var a=[],b=[],c=[],d=[];
   for(var prop in this){
    var d = this[prop];
    if (d===a[prop])
    {
    continue;
    }//防止循环到prototype
    if (b[d]!=1){
     a.push(d);
     b[d]=1;
    }
    else {     c.push(d);
     d[d]=1;
    }
   }
   //return a;
   return c.distinct1();
}
Array.prototype.distinct1=function(){
var a=[],b=[];
for(var prop in this){
   var d = this[prop];
   if (d===a[prop]) continue; //防止循环到prototype
   if (b[d]!=1){
    a.push(d);
    b[d]=1;
   }
}
return a;
}
var x=['a','b','c','d','b','a','e','a','b','c','d','b','a','e','f','f','g'];
document.write('原始数组:'+x);
document.write("<br />");
document.write('去重复后:'+x.distinct());
</script>
Javascript 相关文章推荐
js特殊字符过滤的示例代码
Mar 05 Javascript
JQuery弹出层示例可自定义
May 19 Javascript
JS中如何判断传过来的JSON数据中是否存在某字段
Aug 18 Javascript
JavaScript设计模式之工厂模式和构造器模式
Feb 11 Javascript
jquery关于事件冒泡和事件委托的技巧及阻止与允许事件冒泡的三种实现方法
Nov 27 Javascript
Javascript生成全局唯一标识符(GUID,UUID)的方法
Feb 27 Javascript
Ext JS框架中日期函数的用法及日期选择控件的实现
May 21 Javascript
js中判断变量类型函数typeof的用法总结
Aug 09 Javascript
fullCalendar中文API官方文档
Feb 07 Javascript
微信小程序 scroll-view实现锚点滑动的示例
Dec 06 Javascript
Vue父组件向子组件传值以及data和props的区别详解
Mar 02 Javascript
利用javaScript处理常用事件详解
Apr 14 Javascript
关于js数组去重的问题小结
Jan 24 #Javascript
js数组去重的常用方法总结
Jan 24 #Javascript
JQuery的$和其它JS发生冲突的快速解决方法
Jan 24 #Javascript
js判断60秒以及倒计时示例代码
Jan 24 #Javascript
innerText 使用示例
Jan 23 #Javascript
登陆成功后自动计算秒数执行跳转
Jan 23 #Javascript
检查输入的是否是数字使用keyCode配合onkeypress事件
Jan 23 #Javascript
You might like
用php实现让页面只能被百度gogole蜘蛛访问的方法
2009/12/29 PHP
php利用cookie实现访问次数统计代码
2011/05/19 PHP
php生成gif动画的方法
2015/11/05 PHP
javascript比较文档位置
2008/04/08 Javascript
jQuery弹出层插件简化版代码下载
2008/10/16 Javascript
JavaScript 以对象为索引的关联数组
2010/05/19 Javascript
为你的网站增加亮点的9款jQuery插件推荐
2011/05/03 Javascript
从URL中提取参数与将对象转换为URL查询参数的实现代码
2012/01/12 Javascript
Firefox中beforeunload事件的实现缺陷浅析
2012/05/03 Javascript
原生js实现复制对象、扩展对象 类似jquery中的extend()方法
2014/08/30 Javascript
JS实现点击文字对应DIV层不停闪动效果的方法
2015/03/02 Javascript
JS上传图片前实现图片预览效果的方法
2015/03/02 Javascript
JS实现模拟百度搜索“2012世界末日”网页地震撕裂效果代码
2015/10/31 Javascript
10个JavaScript中易犯小错误
2016/02/14 Javascript
jquery插件bootstrapValidator数据验证详解
2016/11/09 Javascript
AngularJS模仿Form表单提交的实现代码
2016/12/08 Javascript
Vue服务端渲染和Vue浏览器端渲染的性能对比(实例PK )
2017/03/31 Javascript
vue.js国际化 vue-i18n插件的使用详解
2017/07/07 Javascript
Vue仿今日头条实例详解
2018/02/06 Javascript
vue动态绑定组件子父组件多表单验证功能的实现代码
2018/05/14 Javascript
layui 富文本图片上传接口与普通按钮 文件上传接口的例子
2019/09/23 Javascript
详解如何在JS代码中消灭for循环
2019/12/11 Javascript
在Django框架中运行Python应用全攻略
2015/07/17 Python
Python实现HTTP协议下的文件下载方法总结
2016/04/20 Python
简单了解Python中的几种函数
2017/11/03 Python
python装饰器常见使用方法分析
2019/06/26 Python
Python实现 PS 图像调整中的亮度调整
2019/06/28 Python
python爬虫爬取淘宝商品比价(附淘宝反爬虫机制解决小办法)
2020/12/03 Python
英国舒适型鞋履品牌:FitFlop
2017/05/17 全球购物
大专生毕业的自我评价
2014/02/06 职场文书
职员竞岗演讲稿
2014/05/14 职场文书
机关作风建设工作总结
2014/10/23 职场文书
清洁工个人总结
2015/03/04 职场文书
法人身份证明书
2015/06/18 职场文书
微软团队与 NASA 科学家和惠普企业(HPE)的工程师合作
2022/04/21 数码科技
浅谈为什么我的 z-index 又不生效了
2022/07/15 HTML / CSS