JS数组去重(4种方法)


Posted in Javascript onMarch 27, 2017

第一种:双重循环

var ary=[1,2,3,3,2,3,4,5];
for(var i=0;i<ary.length;i++){
  for(var j=i+1;j<ary.length;j++){
    if(ary[i]===ary[j]){
      ary.splice(i,1);
      i--;
    }
  }
}
alert(ary);

第二种:新数组 

var ary=[1,2,3,3,2,3,4,5];
var ary1=[];
for(var i=0;i<ary.length;i++){
 if(ary1.indexOf(ary[i])==-1){
 ary1.push(ary[i]);
 }
}
alert(ary1);

第三种:可以记录次数的对象去重 

var ary=[1,2,3,3,2,3,4,5];
 var obj={};
 for(var i=0;i<ary.length;i++){
  var cur=ary[i];
  if(obj[cur]){
  obj[cur]++;
  }else{
  obj[cur]=1;
  }
 }
 var ary=[];
 for(var attr in obj){
  ary.push(attr);
 }
 alert(ary);

第四种:sort 思想 

var ary=[1,2,3,3,2,3,4,5];
 ary.sort(function(a,b){return a-b;});
 for(var i=0;i<ary.length;i++){
  if(ary[i]===ary[i+1]){
  ary.splice(i,1);
  i--;
  }
 }
 alert(ary);

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
JavaScript 在各个浏览器中执行的耐性
Apr 06 Javascript
jquery访问ashx文件示例代码
Aug 11 Javascript
JS实现的左侧竖向滑动菜单效果代码
Oct 19 Javascript
总结JavaScript中布尔操作符||与&amp;&amp;的使用技巧
Nov 17 Javascript
浅谈JavaScript的全局变量与局部变量
Jun 10 Javascript
全面解析Angular中$Apply()及$Digest()的区别
Aug 04 Javascript
Javascript中类式继承和原型式继承的实现方法和区别之处
Apr 25 Javascript
基于DOM节点删除之empty和remove的区别(详解)
Sep 11 Javascript
关闭Vue计算属性自带的缓存功能方法
Mar 02 Javascript
vue+Element-ui实现分页效果实例代码详解
Dec 10 Javascript
利用vue-i18n实现多语言切换效果的方法
Jun 19 Javascript
深入了解Vue3模板编译原理
Nov 19 Vue.js
JS实现隔行换色的表格排序
Mar 27 #Javascript
JavaScript实现获取远程的html到当前页面中
Mar 26 #Javascript
axios学习教程全攻略
Mar 26 #Javascript
js oncontextmenu事件使用详解
Mar 25 #Javascript
js 函数式编程学习笔记
Mar 25 #Javascript
CodeMirror js代码加亮使用总结
Mar 25 #Javascript
js 去掉字符串前后空格实现代码集合
Mar 25 #Javascript
You might like
PHP实现的DES加密解密类定义与用法示例
2020/11/02 PHP
javascript 面向对象封装与继承
2014/11/27 Javascript
jQuery遮罩层实现方法实例详解(附遮罩层插件)
2015/12/08 Javascript
js代码实现点击按钮出现60秒倒计时
2021/01/28 Javascript
ES6中如何使用Set和WeakSet
2016/03/10 Javascript
Google 地图API资料整理及详细介绍
2016/08/06 Javascript
利用Three.js如何实现阴影效果实例代码
2017/09/26 Javascript
vue select选择框数据变化监听方法
2018/08/24 Javascript
vue动态删除从数据库倒入列表的某一条方法
2018/09/29 Javascript
Vue自定义指令上报Google Analytics事件统计的方法
2019/02/25 Javascript
从理论角度讨论JavaScript闭包
2019/04/03 Javascript
layui-table获得当前行的上/下一行数据的例子
2019/09/24 Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
2020/06/11 Javascript
vue编写简单的购物车功能
2021/01/08 Vue.js
[01:02:55]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
linux环境下安装pyramid和新建项目的步骤
2013/11/27 Python
python模拟登录百度代码分享(获取百度贴吧等级)
2013/12/27 Python
在GitHub Pages上使用Pelican搭建博客的教程
2015/04/25 Python
Python备份目录及目录下的全部内容的实现方法
2016/06/12 Python
python机器学习之神经网络(三)
2017/12/20 Python
Python实现输出某区间范围内全部素数的方法
2018/05/02 Python
Python并行分布式框架Celery详解
2018/10/15 Python
Python TestCase中的断言方法介绍
2019/05/02 Python
Python 使用type来定义类的实现
2019/11/19 Python
linux环境下安装python虚拟环境及注意事项
2020/01/07 Python
史蒂夫·马登加拿大官网:Steve Madden加拿大
2017/11/18 全球购物
介绍一下Make? 为什么使用make
2013/12/08 面试题
教育科学研究生自荐信
2013/10/09 职场文书
自考毕业生自我鉴定
2013/11/04 职场文书
工作时间上网检讨书
2014/02/03 职场文书
珠宝店促销方案
2014/03/21 职场文书
师范大学生求职信
2014/06/13 职场文书
中职三好学生事迹材料
2014/08/24 职场文书
教师个人年终总结
2015/02/11 职场文书
升职自荐书
2019/05/09 职场文书
win10更新失败无限重启解决方法
2022/04/19 数码科技