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 相关文章推荐
用于自动添加Digg This!按钮的JavaScript
Dec 23 Javascript
jQuery入门问答 整理的几个常见的初学者问题
Feb 22 Javascript
让浏览器非阻塞加载javascript的几种方法小结
Apr 25 Javascript
使用js检测浏览器的实现代码
May 14 Javascript
javascript:文字不间断向左移动的实例代码
Aug 08 Javascript
jQuery+CSS实现滑动的标签分栏切换效果
Dec 17 Javascript
jQuery防止重复绑定事件的解决方法
May 14 Javascript
JavaScript实现的浏览器下载文件的方法
Aug 09 Javascript
Vue混入mixins滚动触底的方法
Nov 22 Javascript
微信小程序实现录音功能
Nov 22 Javascript
Echarts在Taro微信小程序开发中的踩坑记录
Nov 09 Javascript
SpringBoot+Vue 前后端合并部署的配置方法
Dec 30 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中Session的概念
2006/10/09 PHP
PHP实现多服务器session共享之NFS共享的方法
2007/03/16 PHP
附件名前加网站名
2008/03/23 PHP
php is_file 判断给定文件名是否为一个正常的文件
2010/05/10 PHP
php使用codebase生成随机数
2014/03/25 PHP
php基于curl扩展制作跨平台的restfule 接口
2015/05/11 PHP
PHP生成加减算法方式的验证码实例
2018/03/12 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
2021/03/09 PHP
JavaScript下申明对象的几种方法小结
2008/10/02 Javascript
jQuery 一个图片切换的插件
2011/10/09 Javascript
简单的邮箱登陆的提示效果类似于yahoo邮箱
2014/02/26 Javascript
jQuery获取URL请求参数的方法
2015/07/18 Javascript
jQuery中数据缓存$.data的用法及源码完全解析
2016/04/29 Javascript
JS常用倒计时代码实例总结
2017/02/07 Javascript
Bootstrap modal 多弹窗之叠加关闭阴影遮罩问题的解决方法
2017/02/27 Javascript
js实现时间轴自动排列效果
2017/03/09 Javascript
vue2.0 better-scroll 实现移动端滑动的示例代码
2018/01/25 Javascript
jQuery中ajax请求后台返回json数据并渲染HTML的方法
2018/08/08 jQuery
vue修改对象的属性值后页面不重新渲染的实例
2018/08/09 Javascript
微信 jssdk 签名错误invalid signature的解决方法
2019/01/14 Javascript
NodeJS读取分析Nginx错误日志的方法
2019/05/14 NodeJs
layui table数据修改的回显方法
2019/09/04 Javascript
python脚本实现查找webshell的方法
2014/07/31 Python
理解生产者消费者模型及在Python编程中的运用实例
2016/06/26 Python
Python正则表达式和re库知识点总结
2019/02/11 Python
TensorFlow tf.nn.conv2d实现卷积的方式
2020/01/03 Python
详解字符串在Python内部是如何省内存的
2020/02/03 Python
Django使用Celery加redis执行异步任务的实例内容
2020/02/20 Python
利用jupyter网页版本进行python函数查询方式
2020/04/14 Python
Jmeter HTTPS接口测试证书导入过程图解
2020/07/22 Python
Lookfantastic德国官网:英国知名美妆购物网站
2017/06/11 全球购物
《我要的是葫芦》教学反思
2014/02/23 职场文书
儿童生日会策划方案
2014/05/15 职场文书
人力资源管理专业毕业生自荐书
2014/05/25 职场文书
教学质量月活动总结
2015/05/11 职场文书
师德师风培训感言
2015/08/03 职场文书