javascript数组去重方法分析


Posted in Javascript onDecember 15, 2016

本文实例讲述了javascript数组去重方法。分享给大家供大家参考,具体如下:

方法一.

思路:创建一个新的空数组,循环遍历旧数组,用indexOf()方法,可以取得元素在数组中的位置,如果值为-1表示不存在。那么新数组用indexOf去获取老数组的每一个元素,如果值为-1表示不存在,就把他push到新数组里,最后输出新数组即去重后的数组

var arr=[24,56,74,89,24,56,78,09,24];
var new_arr=[];
for(var i=0;i<arr.length;i++){
  if(new_arr.indexOf(arr[i])==-1){
    new_arr.push(arr[i]);
  }
}
console.log(new_arr);

方法二.

var arr=[2,58,49,26,49];<br>var o={};
var new_arr=[];
for(var i=0;i<arr.length;i++){
  var k=arr[i];
  if(!o[k]){
    o[k]=true;
    new_arr.push(k);
  }
}
alert(new_arr);

同样的原理,只是借用一个空对象来判断

注:第二种方法是把已经出现过的通过下标的形式存入到一个object内,下标引用要比用indexOf()搜索数组快得多,所以第一种方法很耗资源

Javascript 相关文章推荐
表单内同名元素的控制
Nov 22 Javascript
js获取某月的最后一天日期的简单实例
Jun 22 Javascript
js style动态设置table高度
Oct 21 Javascript
Javascript监视变量变化的方法
Jun 09 Javascript
JavaScript Ajax编程 应用篇
Jul 02 Javascript
JS中this上下文对象使用方式
Oct 09 Javascript
jquery与ajax获取特殊字符实例详解
Jan 08 Javascript
js按条件生成随机json:randomjson实现方法
Apr 07 Javascript
详谈表单重复提交的三种情况及解决方法
Aug 16 Javascript
详解Vue.js中.native修饰符
Apr 24 Javascript
微信小程序实现聊天对话(文本、图片)功能
Jul 06 Javascript
vue中$refs, $emit, $on, $once, $off的使用详解
May 26 Javascript
JS碰撞运动实现方法详解
Dec 15 #Javascript
浅述节点的创建及常见功能的实现
Dec 15 #Javascript
Bootstrap整体框架之JavaScript插件架构
Dec 15 #Javascript
如何解决hover在ie6中的兼容性问题
Dec 15 #Javascript
Bootstrap整体框架之CSS12栅格系统
Dec 15 #Javascript
Bootstrap CSS布局之列表
Dec 15 #Javascript
BootStrap整体框架之基础布局组件
Dec 15 #Javascript
You might like
在线短消息收发的程序,不用数据库
2006/10/09 PHP
php获取目标函数执行时间示例
2014/03/04 PHP
DOM Scripting中的图片切换[兼容Firefox]
2010/06/12 Javascript
读jQuery之六 缓存数据功能介绍
2011/06/21 Javascript
jQuery点击后一组图片左右滑动的实现代码
2012/08/16 Javascript
JS 精确统计网站访问量的实例代码
2013/07/05 Javascript
node.js中的fs.readSync方法使用说明
2014/12/17 Javascript
jQuery插件Slider Revolution实现响应动画滑动图片切换效果
2015/06/05 Javascript
JS判断元素是否在数组内的实现代码
2016/03/30 Javascript
自动化测试读写64位操作系统的注册表
2016/08/15 Javascript
JavaScript实现仿Clock ISO时钟
2018/06/29 Javascript
Phaser.js实现简单的跑酷游戏附源码下载
2018/10/26 Javascript
使用layui 的layedit定义自己的toolbar方法
2019/09/18 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
2020/02/09 Javascript
在vue项目中封装echarts的步骤
2020/12/25 Vue.js
[03:20]次级联赛厮杀超职业 现超级兵对拆世纪大战
2014/10/30 DOTA
python正则分析nginx的访问日志
2017/01/17 Python
Python解惑之True和False详解
2017/04/24 Python
python模块之sys模块和序列化模块(实例讲解)
2017/09/13 Python
朴素贝叶斯分类算法原理与Python实现与使用方法案例
2018/06/26 Python
在IPython中进行Python程序执行时间的测量方法
2018/11/01 Python
python脚本开机自启的实现方法
2019/06/28 Python
Python线上环境使用日志的及配置文件
2019/07/28 Python
Python使用Matlab命令过程解析
2020/06/04 Python
html5 http的轮询和Websocket原理
2018/10/19 HTML / CSS
Melissa香港官网:MDreams
2016/07/01 全球购物
阿里旅行:飞猪
2017/01/05 全球购物
土木工程毕业生推荐信
2013/10/28 职场文书
学生实习推荐信范文
2013/11/26 职场文书
计算机相关的自我评价
2014/01/15 职场文书
致标枪运动员加油稿
2014/02/15 职场文书
护士岗前培训自我评鉴
2014/02/28 职场文书
我读书我快乐演讲稿
2014/05/07 职场文书
2014教师年度工作总结
2014/11/10 职场文书
运动会通讯稿100字
2015/07/20 职场文书
Pandas搭配lambda组合使用详解
2022/01/22 Python