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 相关文章推荐
Prototype使用指南之selector.js说明
Oct 26 Javascript
javascript高级学习笔记整理
Aug 14 Javascript
JavaScript框架(iframe)操作总结
Apr 16 Javascript
JavaScript参数个数可变的函数举例说明
Oct 10 Javascript
js实现touch移动触屏滑动事件
Apr 17 Javascript
jQuery实现延迟跳转的方法
Jun 05 Javascript
详解Javascript函数声明与递归调用
Oct 22 Javascript
vue-router 中router-view不能渲染的解决方法
May 23 Javascript
JS实现遍历不规则多维数组的方法
Mar 21 Javascript
vue路由导航守卫和请求拦截以及基于node的token认证的方法
Apr 07 Javascript
原生Vue 实现右键菜单组件功能
Dec 16 Javascript
JS运算符简单用法示例
Jan 19 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错误日志的获取方法
2015/07/20 PHP
JQuery 国际象棋棋盘 实现代码
2009/06/26 Javascript
最新的10款jQuery内容滑块插件分享
2011/09/18 Javascript
JS将秒换成时分秒实现代码
2013/09/03 Javascript
js 去除字符串第一位逗号的方法
2014/06/07 Javascript
jquery实现滑屏大图定时收缩为小banner图片的广告代码
2015/09/02 Javascript
Position属性之relative用法
2015/12/14 Javascript
javascript基础知识
2016/06/07 Javascript
jQueryUI Datepicker组件设置日期高亮
2016/10/13 Javascript
jQuery中的deferred使用方法
2017/03/27 jQuery
ES5学习教程之Array对象
2017/04/01 Javascript
javascript 开发之百度地图使用到的js函数整理
2017/05/19 Javascript
JavaScript中Object基础内部方法图
2018/02/05 Javascript
angular 内存溢出的问题解决
2018/07/12 Javascript
微信小程序开发实现的IP地址查询功能示例
2019/03/28 Javascript
vue-cli3 配置开发与测试环境详解
2019/05/17 Javascript
vue点击自增和求和的实例代码
2019/11/06 Javascript
JS如何生成动态列表
2020/09/22 Javascript
python解决汉字编码问题:Unicode Decode Error
2017/01/19 Python
python随机数分布random测试
2018/08/27 Python
Django如何简单快速实现PUT、DELETE方法
2019/07/24 Python
关于Flask项目无法使用公网IP访问的解决方式
2019/11/19 Python
使用celery和Django处理异步任务的流程分析
2020/02/19 Python
Python闭包装饰器使用方法汇总
2020/06/29 Python
Django中Q查询及Q()对象 F查询及F()对象用法
2020/07/09 Python
详解基于python的图像Gabor变换及特征提取
2020/10/26 Python
一款基于css3麻将筛子3D翻转特效的实例教程
2014/12/31 HTML / CSS
广州某公司软件工程师面试题
2014/12/22 面试题
奠基仪式策划方案
2014/05/15 职场文书
学校安全生产承诺书
2014/05/23 职场文书
2014年信访工作总结
2014/11/17 职场文书
社区三八妇女节活动总结
2015/02/06 职场文书
写给老婆的保证书
2015/02/27 职场文书
2015年公司国庆放假通知
2015/07/30 职场文书
2016年校园植树节广播稿
2015/12/17 职场文书
彻底弄懂Python中的回调函数(callback)
2022/06/25 Python