JavaScript中数组去除重复的三种方法


Posted in Javascript onApril 22, 2016

废话不多说了,具体方法如下所示:

方法一:返回新数组每个位子类型没变

function outRepeat(a){
      var hash=[],arr=[];
      for (var i = 0; i < a.length; i++) {
        hash[a[i]]!=null;
        if(!hash[a[i]]){
          arr.push(a[i]);
          hash[a[i]]=true;
        }
      }
      console.log(arr);
    }
    outRepeat([2,4,4,5,"a","a"]);//[2, 4, 5, "a"]

方法二:类似于法一,但本农觉着法一更易于理解

function outRepeat(a){
      var hash=[],arr=[];
      for (var i = 0,elem;(elem=a[i])!=null; i++) {
        if(!hash[elem]){
          arr.push(elem);
          hash[elem]=true;
        }
      }
      console.log(arr);
    }
    outRepeat([2,4,4,5,"a","a"]);//[2, 4, 5, "a"]

方法三:比前两个更易于理解但是返回的新数组每个位子的number类型变为string类型了!!关键时刻得处理

function outRepeat(a){
      var hash=[],arr=[];
      for (var i = 0; i < a.length; i++) {
        hash[a[i]]=null;
      }
      for(var key in hash){
          arr.push(key);        
        }
      console.log(arr);
    }
    outRepeat([2,4,4,5,"a","a"]);//["2", "4", "5", "a"]

以上是小编给大家介绍的JavaScript中数组去除重复的三种方法,希望对大家有所帮助!

Javascript 相关文章推荐
原型方法的不同写法居然会影响调试的解决方法
Mar 08 Javascript
jquery使用slideDown实现模块缓慢拉出效果的方法
Mar 27 Javascript
JavaScript实现获得所有兄弟节点的方法
Jul 23 Javascript
SpringMVC restful 注解之@RequestBody进行json与object转换
Dec 10 Javascript
JS实现图片延迟加载并淡入淡出效果的简单方法
Aug 25 Javascript
深入理解vue.js双向绑定的实现原理
Dec 05 Javascript
微信小程序左滑删除效果的实现代码
Feb 20 Javascript
从零开始学习Node.js系列教程五:服务器监听方法示例
Apr 13 Javascript
Vue通过input筛选数据
Oct 26 Javascript
关于javascript sort()排序你可能忽略的一点理解
Jul 18 Javascript
Vue导出json数据到Excel电子表格的示例
Dec 04 Javascript
泛谈JS逻辑判断选择器 || &amp;&amp;
May 24 Javascript
IE和Firefox之间在JavaScript语法上的差异
Apr 22 #Javascript
动态加载JavaScript文件的两种方法
Apr 22 #Javascript
JavaScript记录光标在编辑器中位置的实现方法
Apr 22 #Javascript
在AngularJS中使用jQuery的zTree插件的方法
Apr 21 #Javascript
AngularJS中实现用户访问的身份认证和表单验证功能
Apr 21 #Javascript
解决JS组件bootstrap table分页实现过程中遇到的问题
Apr 21 #Javascript
javascript常见数字进制转换实例分析
Apr 21 #Javascript
You might like
php连接mysql数据库代码
2009/03/10 PHP
PHP中数字检测is_numeric与ctype_digit的区别介绍
2012/10/04 PHP
简单谈谈php中ob_flush和flush的区别
2014/11/27 PHP
ThinkPHP发送邮件示例代码
2016/10/08 PHP
php安装dblib扩展,连接mssql的具体步骤
2017/03/02 PHP
解决出现SoapFault (looks like we got no XML document)的问题
2017/06/24 PHP
Joomla框架实现字符串截取的方法示例
2017/07/18 PHP
PHP语言对接抖音快手小红书视频/图片去水印API接口源码
2020/08/11 PHP
非常不错的一个javascript 类
2006/11/07 Javascript
JavaScript Array扩展实现代码
2009/10/14 Javascript
Javascript 自适应高度的Tab选项卡
2011/04/05 Javascript
JavaScript判断文件上传类型的方法
2014/09/02 Javascript
用JavaScript显示浏览器客户端信息的超相近教程
2015/06/18 Javascript
浅析2种JavaScript继承方式
2015/12/04 Javascript
jQuery中fadein与fadeout方法用法示例
2016/09/16 Javascript
js模式化窗口问题![window.dialogArguments]
2016/10/30 Javascript
JavaScript求一组数的最小公倍数和最大公约数常用算法详解【面向对象,回归迭代和循环】
2018/05/07 Javascript
jQuery动态操作表单示例【基于table表格】
2018/12/06 jQuery
Node.js开发之套接字(socket)编程入门示例
2019/11/05 Javascript
python的re模块应用实例
2014/09/26 Python
Python使用pyshp库读取shapefile信息的方法
2018/12/29 Python
Django处理多用户类型的方法介绍
2019/05/18 Python
Django框架用户注销功能实现方法分析
2019/05/28 Python
Pandas 缺失数据处理的实现
2019/11/04 Python
pytorch方法测试——激活函数(ReLU)详解
2020/01/15 Python
如何使用python传入不确定个数参数
2020/02/18 Python
基于Tensorflow的MNIST手写数字识别分类
2020/06/17 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
一款纯css3实现的鼠标悬停动画按钮
2014/12/29 HTML / CSS
html5 touch事件实现页面上下滑动效果【附代码】
2016/03/10 HTML / CSS
详解H5本地储存Web Storage
2017/07/03 HTML / CSS
小学毕业演讲稿
2014/04/25 职场文书
经管应届生求职信范文
2014/05/18 职场文书
会计人员演讲稿
2014/09/11 职场文书
会计出纳岗位职责
2015/03/31 职场文书
Nginx反向代理及负载均衡如何实现(基于linux)
2021/03/31 Servers