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 相关文章推荐
DHTML Slide Show script图片轮换
Mar 03 Javascript
Javascript倒计时代码
Aug 12 Javascript
JavaScript实现快速排序(自已编写)
Dec 19 Javascript
jQuery层次选择器选择元素使用介绍
Apr 18 Javascript
Knockout visible绑定使用方法
Nov 15 Javascript
jquery单行文字向上滚动效果的实现代码
Sep 05 Javascript
浅谈EasyUI中Treegrid节点的删除
Mar 01 Javascript
标准的js无缝滚动效果
Aug 30 Javascript
bootstrap选项卡使用方法解析
Jan 11 Javascript
ES6 更易于继承的类语法的使用
Feb 11 Javascript
微信小程序wx.request拦截器使用详解
Jul 09 Javascript
浅谈VUE中演示v-for为什么要加key
Jan 16 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网页游戏学习之Xnova(ogame)源码解读(九)
2014/06/24 PHP
php 在线导入mysql大数据程序
2015/06/11 PHP
使用PHP uniqid函数生成唯一ID
2015/11/18 PHP
CI框架(CodeIgniter)公共模型类定义与用法示例
2017/08/10 PHP
javascript网页关键字高亮代码
2008/07/30 Javascript
setTimeout和setInterval的深入理解
2013/11/08 Javascript
javascript打印html内容功能的方法示例
2013/11/28 Javascript
js面向对象之公有、私有、静态属性和方法详解
2015/04/17 Javascript
JavaScript中两个字符串的匹配
2016/06/08 Javascript
Angular懒加载机制刷新后无法回退的快速解决方法
2016/08/30 Javascript
Node.js开发教程之基于OnceIO框架实现文件上传和验证功能
2016/11/30 Javascript
详解React 16 中的异常处理
2017/07/28 Javascript
Vue.js实现网格列表布局转换方法
2017/08/25 Javascript
浅谈vue项目优化之页面的按需加载(vue+webpack)
2017/12/11 Javascript
jquery实现楼层滚动效果
2018/01/01 jQuery
Vue Prop属性功能与用法实例详解
2019/02/23 Javascript
详解基于Vue的支持数据双向绑定的select组件
2019/09/02 Javascript
python简单实现刷新智联简历
2016/03/30 Python
详解Python的Django框架中manage命令的使用与扩展
2016/04/11 Python
python 接口返回的json字符串实例
2018/03/27 Python
python的一些加密方法及python 加密模块
2019/07/11 Python
Django用户认证系统 组与权限解析
2019/08/02 Python
Python拆分大型CSV文件代码实例
2019/10/07 Python
解决python中的幂函数、指数函数问题
2019/11/25 Python
Python 自由定制表格的实现示例
2020/03/20 Python
Python restful框架接口开发实现
2020/04/13 Python
利用Python实现最小二乘法与梯度下降算法
2021/02/21 Python
HTML5之SVG 2D入门3—文本与图像及渲染文本介绍
2013/01/30 HTML / CSS
机械设计职业生涯规划书
2013/12/27 职场文书
预备党员政审材料
2014/02/04 职场文书
运动会稿件100字
2014/02/21 职场文书
农民工工资发放承诺书
2014/03/31 职场文书
一年级学生期末评语
2014/04/21 职场文书
捐款活动总结
2014/08/27 职场文书
Python如何使用logging为Flask增加logid
2021/03/30 Python
python文件与路径操作神器 pathlib
2022/04/01 Python