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 相关文章推荐
IE下js调试工具Companion.JS
Oct 15 Javascript
jquery toolbar与网页浮动工具条具体实现代码
Jan 12 Javascript
jquery获取form表单input元素值的简单实例
May 30 Javascript
jQuery弹出层后禁用底部滚动条(移动端关闭回到原位置)
Aug 29 Javascript
js 判断数据类型的几种方法
Jan 13 Javascript
jQuery基于ajax方式实现用户名存在性检查功能示例
Feb 10 Javascript
Angular 5.0 来了! 有这些大变化
Nov 15 Javascript
JavaScript对象拷贝与Object.assign用法实例分析
Jun 20 Javascript
微信小程序websocket实现聊天功能
Mar 30 Javascript
javascript实现小型区块链功能
Apr 03 Javascript
Angular封装搜索框组件操作示例
Apr 25 Javascript
Vant Weapp组件踩坑:picker的初始赋值解决
Nov 12 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中开发XML应用程序之基础篇 添加节点 删除节点 查询节点 查询节
2010/07/09 PHP
解析PHP中的内存管理,PHP动态分配和释放内存
2013/06/28 PHP
ueditor 1.2.6 使用方法说明
2013/07/24 PHP
php操作mysqli(示例代码)
2013/10/28 PHP
php根据指定位置和长度获得子字符串的方法
2015/03/17 PHP
php实现的统计字数函数定义与使用示例
2017/07/26 PHP
使用laravel的migrate创建数据表的方法
2019/09/30 PHP
jquery图片上下tab切换效果
2011/03/18 Javascript
jQuery之网页换肤实现代码
2011/04/30 Javascript
jquery动态增加text元素以及删除文本内容实例代码
2013/07/01 Javascript
jquery索引在使用中的一些困惑
2013/10/24 Javascript
使用JavaScript判断图片是否加载完成的三种实现方式
2014/05/04 Javascript
js使用for循环查询数组中是否存在某个值
2014/08/12 Javascript
javascript判断回文数详解及实现代码
2017/02/03 Javascript
Angular事件之不同组件间传递数据的方法
2018/11/15 Javascript
Smartour 让网页导览变得更简单(推荐)
2019/07/19 Javascript
15分钟学会vue项目改造成SSR(小白教程)
2019/12/17 Javascript
小程序跳转到的H5页面再跳转回跳小程序的方法
2020/03/06 Javascript
React中Ref 的使用方法详解
2020/04/28 Javascript
vue.js封装switch开关组件的操作
2020/10/26 Javascript
JavaScript事件概念详解(区分静态注册和动态注册)
2021/02/05 Javascript
Python实现简单的HttpServer服务器示例
2017/09/25 Python
python使用mysql的两种使用方式
2018/03/07 Python
对python append 与浅拷贝的实例讲解
2018/05/04 Python
python微信公众号之关键词自动回复
2018/06/15 Python
python多线程并发及测试框架案例
2019/10/15 Python
HTML5中通过li-canvas轻松实现单图、多图、圆角图绘制,单行文字、多行文字等
2018/11/30 HTML / CSS
canvas 如何绘制线段的实现方法
2018/07/12 HTML / CSS
前端实现背景虚化但内容清晰且自适应 的实例代码
2019/08/01 HTML / CSS
VLAN和VPN有什么区别?分别实现在OSI的第几层?
2014/12/23 面试题
常务副总经理岗位职责
2014/04/12 职场文书
员工自我评价范文
2015/03/11 职场文书
承诺书模板大全
2015/05/04 职场文书
女方家长婚礼答谢词
2015/09/29 职场文书
2016年清明节红领巾广播稿
2015/12/17 职场文书
MySQL中datetime时间字段的四舍五入操作
2021/10/05 MySQL