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 相关文章推荐
javascript div 遮罩层封锁整个页面
Jul 10 Javascript
js特效,页面下雪的小例子
Jun 17 Javascript
js判断元素是否隐藏的方法
Jun 09 Javascript
jQuery插件Easyui设置datagrid的pageNumber导致两次请求问题的解决方法
Aug 06 Javascript
Javascript typeof与instanceof的区别
Oct 18 Javascript
原生JS实现的碰撞检测功能示例
May 18 Javascript
vue使用混入定义全局变量、函数、筛选器的实例代码
Jul 29 Javascript
150行Node.js实现的dns代理工具
Aug 02 Javascript
Vue的编码技巧与规范使用详解
Aug 28 Javascript
使用原生JS实现火锅点餐小程序(面向对象思想)
Dec 10 Javascript
vue 输入电话号码自动按3-4-4分割功能的实现代码
Apr 30 Javascript
Element实现表格嵌套、多个表格共用一个表头的方法
May 09 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 mkdir()定义和用法
2009/01/14 PHP
阿里云PHP SMS短信服务验证码发送方法
2017/07/11 PHP
PHP 自动加载类原理与用法实例分析
2020/04/14 PHP
jquery each()源代码
2011/02/14 Javascript
JS中eval函数的使用示例
2013/07/21 Javascript
js监听鼠标点击和键盘点击事件并自动跳转页面
2014/09/24 Javascript
使用jQuery仿苹果官网焦点图特效
2014/12/23 Javascript
基于jquery实现放大镜效果
2015/08/17 Javascript
Bootstrap每天必学之按钮(一)
2015/11/24 Javascript
jquery表格datatables实例解析 直接加载和延迟加载
2016/08/12 Javascript
vue自定义指令实现v-tap插件
2016/11/03 Javascript
遍历json 对象的属性并且动态添加属性的实现
2016/12/02 Javascript
JS奇技之利用scroll来监听resize详解
2017/06/15 Javascript
探索webpack模块及webpack3新特性
2017/09/18 Javascript
js中的闭包实例展示
2018/11/01 Javascript
如何将百度地图包装成Vue的组件的方法步骤
2019/02/12 Javascript
如何使用CSS3和JQuery easing 插件制作绚丽菜单
2019/06/18 jQuery
layer.open的自适应及居中及子页面标题的修改方法
2019/09/05 Javascript
vue使用exif获取图片经纬度的示例代码
2020/12/11 Vue.js
Eclipse中Python开发环境搭建简单教程
2016/03/23 Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
2016/06/30 Python
深入浅析Python科学计算库Scipy及安装步骤
2019/10/12 Python
Python浮点数四舍五入问题的分析与解决方法
2019/11/19 Python
Iconfont(矢量图标)+iconmoon(图标svg互转)配合javascript实现社交分享系统
2020/04/21 Python
如何用Python徒手写线性回归
2021/01/25 Python
HTML5+CSS3:3D展示商品信息示例
2017/01/03 HTML / CSS
使用canvas一步步实现图片打码功能的方法
2019/06/17 HTML / CSS
Sunglasses Shop德国站:欧洲排名第一的太阳镜网站
2017/08/01 全球购物
印度最大的网上花店:Ferns N Petals(鲜花、礼品和蛋糕)
2017/10/16 全球购物
英国高街奥特莱斯:Highstreet Outlet
2019/11/21 全球购物
预备党员表决心书
2014/03/11 职场文书
企业员工集体活动方案
2014/08/17 职场文书
办理护照工作证明
2014/10/10 职场文书
红白喜事主持词
2015/07/06 职场文书
2016年小学“公民道德宣传日”活动总结
2016/04/01 职场文书
剑指Offer之Java算法习题精讲二叉树的构造和遍历
2022/03/21 Java/Android