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 实现图片无缝滚动
Dec 19 Javascript
js实现jquery的offset()方法实例
Jan 10 Javascript
在JavaScript应用中使用RequireJS来实现延迟加载
Jul 01 Javascript
浅谈js常用内置方法和对象
Sep 24 Javascript
使用jquery如何获取时间
Oct 13 Javascript
bootstrap fileinput组件整合Springmvc上传图片到本地磁盘
May 11 Javascript
vue+mockjs模拟数据实现前后端分离开发的实例代码
Aug 08 Javascript
vue实现自定义H5视频播放器的方法步骤
Jul 01 Javascript
详解webpack引用jquery(第三方模块)的三种办法
Aug 21 jQuery
vue element自定义表单验证请求后端接口验证
Dec 11 Javascript
小程序简单两栏瀑布流效果的实现
Dec 18 Javascript
Vue数组响应式操作及高阶函数使用代码详解
Aug 01 Javascript
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采用ajax数据提交post与post常见方法总结
2014/11/10 PHP
YII Framework框架教程之日志用法详解
2016/03/14 PHP
yii2-GridView在开发中常用的功能及技巧总结
2017/01/07 PHP
推荐40个简单的 jQuery 导航插件和教程(下篇)
2012/09/14 Javascript
JavaScript实现鼠标滑过处生成气泡的方法
2015/05/16 Javascript
JavaScript实现字符串与日期的互相转换及日期的格式化
2016/03/07 Javascript
浅谈Sticky组件的改进实现
2016/03/22 Javascript
JavaScript事件处理的方式(三种)
2016/04/26 Javascript
JS解决iframe之间通信和自适应高度的问题
2016/08/24 Javascript
angular中的http拦截器Interceptors的实现
2017/02/21 Javascript
Angular实现一个简单的多选复选框的弹出框指令实例
2017/04/25 Javascript
vue.js 获取当前自定义属性值
2017/06/01 Javascript
js轮播图无缝滚动效果
2017/06/17 Javascript
VUE元素的隐藏和显示(v-show指令)
2017/06/23 Javascript
深入理解 webpack 文件打包机制(小结)
2018/01/08 Javascript
JavaScript 复制对象与Object.assign方法无法实现深复制
2018/11/02 Javascript
在微信小程序中使用图表的方法示例
2019/04/25 Javascript
JavaScript多种图形实现代码实例
2020/06/28 Javascript
[51:27]LGD vs Liquid 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
在服务器端实现无间断部署Python应用的教程
2015/04/16 Python
解决Python 遍历字典时删除元素报异常的问题
2016/09/11 Python
python中reduce()函数的使用方法示例
2017/09/29 Python
pycharm 配置远程解释器的方法
2018/10/28 Python
django配置连接数据库及原生sql语句的使用方法
2019/03/03 Python
Flask模板引擎之Jinja2语法介绍
2019/06/26 Python
tensorflow自定义激活函数实例
2020/02/04 Python
python设置环境变量的作用整理
2020/02/17 Python
如何利用Python动态模拟太阳系运转
2020/09/04 Python
详解css3 Transition属性(平滑过渡菜单栏案例)
2017/09/05 HTML / CSS
HTML5 实现一个访问本地文件的实例
2012/12/13 HTML / CSS
利用HTML5的新特点实现图片文件异步上传
2014/05/29 HTML / CSS
Glamest意大利:女性在线奢侈品零售店
2019/04/28 全球购物
Aosom西班牙:家具在线商店
2020/06/11 全球购物
党章学习思想汇报
2014/01/14 职场文书
《生命的药方》教学反思
2014/04/08 职场文书
Python OpenCV超详细讲解调整大小与图像操作的实现
2022/04/02 Python