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

 更新时间:2014年01月24日 09:31:35   作者:  
本篇文章主要是对JS数组去重与取重的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
方法一:去重复数据
复制代码 代码如下:

<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>

相关文章

  • webpack+vue2构建vue项目骨架的方法

    webpack+vue2构建vue项目骨架的方法

    本篇文章主要介绍了webpack+vue2构建vue项目骨架的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • uniapp自定义tabbar的方法(支持中间凸起、角标、动态隐藏tab和全端适用)

    uniapp自定义tabbar的方法(支持中间凸起、角标、动态隐藏tab和全端适用)

    一个项目有多个角色,比如医生和患者,tabBar跳转的路径不一样,但是在pages.json中无法配置多个tabBar,这时候就要自定义tabBar了,下面这篇文章主要给大家介绍了关于uniapp自定义tabbar(支持中间凸起、角标、动态隐藏tab和全端适用)的相关资料,需要的朋友可以参考下
    2023-04-04
  • js与jquery分别实现tab标签页功能的方法

    js与jquery分别实现tab标签页功能的方法

    这篇文章主要介绍了js与jquery分别实现tab标签页功能的方法,结合实例形式对比分析了javascript与jQuery分别实现tab标签功能的操作技巧,需要的朋友可以参考下
    2016-11-11
  • file模式访问网页时iframe高度自适应解决方案

    file模式访问网页时iframe高度自适应解决方案

    最近做到iframe的高度自适应这个问题;发现自己做的网页是通过file方式访问的,将网页代码放到apache下通过http协议访问,在iframe加载的时候调用如下js方法:果然网页高度能够自适应(对于其他方案应该也有效果,我没有注意去尝试)感兴趣的朋友可以了解下
    2013-01-01
  • js实现时间显示几天前、几小时前或者几分钟前的方法集锦

    js实现时间显示几天前、几小时前或者几分钟前的方法集锦

    这篇文章主要介绍了js实现时间显示几天前、几小时前或者几分钟前的方法,实例汇总分析了时间显示格式转换的常用思路与技巧,需要的朋友可以参考下
    2015-05-05
  • TypeScript使用axios库进行高效的网页数据抓取

    TypeScript使用axios库进行高效的网页数据抓取

    在当今的互联网时代,数据已成为企业最宝贵的资产之一,无论是社交媒体分析、市场趋势预测还是用户行为研究,高效地获取和处理网页数据都是至关重要的,本文将通过访问抖音平台的案例,介绍如何在TypeScript中使用axios库进行高效的网页数据抓取
    2024-08-08
  • JS常用倒计时代码实例总结

    JS常用倒计时代码实例总结

    这篇文章主要介绍了JS常用倒计时代码,结合实例形式总结分析了JS常用的倒计时功能实现方法,具有一定参考借鉴价值,需要的朋友可以参考下
    2017-02-02
  • 总结28个令人惊艳的JavaScript单行代码

    总结28个令人惊艳的JavaScript单行代码

    JavaScript作为一种强大而灵活的脚本语言,充满了许多令人惊艳的特性,本文将带你探索28个令人惊艳的JavaScript单行代码,展示它们的神奇魅力,感兴趣的同学跟着小编一起来看看吧
    2023-12-12
  • javascript iframe编程相关代码

    javascript iframe编程相关代码

    javascript iframe编程相关代码,对于熟练操作iframe的朋友有很大的帮助。
    2009-12-12
  • 微信开发相关功能之使用微信JS-SDK接口

    微信开发相关功能之使用微信JS-SDK接口

    这篇文章主要给大家介绍了关于微信开发相关功能之使用微信JS-SDK接口的相关资料,微信SDK是一套开发工具包,为开发者提供了许多API接口,使得开发一个微信公众号变得更加简单,需要的朋友可以参考下
    2023-12-12

最新评论