JavaScript使用indexOf()实现数组去重的方法分析


Posted in Javascript onSeptember 04, 2018

本文实例讲述了JavaScript使用indexOf()实现数组去重的方法。分享给大家供大家参考,具体如下:

数组去重方法有多中,这里列举出自己认为比较容易理解的方法.

思路:

  • 1. 创建一个新的空数组,用来存放去重后的新数组.
  • 2. 利用for循环循环遍历需要去重的数组.
  • 3. 利用indexOf()方法查询遍历出的数组在新数组中是否出现,如果出现:则继续遍历数组,如未出现:则利用push方法添加到新数组中.
  • 4. 原数组循环遍历完成后,组建一个已经去除重复的新数组.
<script>
  var arr = [1,3,4,5,6,7,4,3,2,4,5,6,7,3,2];
  function find(){
    var newArr = [];
    for (var i = 0; i < arr.length; i++) {
      if (newArr.indexOf(arr[i]) == -1 ) {
        newArr.push(arr[i]);
      }
    }
    document.write(newArr);
  }
  find(arr);
</script>

这里使用在线HTML/CSS/JavaScript代码运行工具http://tools.3water.com/code/HtmlJsRun测试运行结果如下:

JavaScript使用indexOf()实现数组去重的方法分析

补充:indexOf() 方法返回值:

  • 如果检索的结果没有匹配值,则返回 -1.
  • 如果检索的结果匹配到,则返回 1.
Javascript 相关文章推荐
利用js的Node遍历找到repeater的一个字段实例介绍
Apr 25 Javascript
jQuery使用drag效果实现自由拖拽div
Jun 11 Javascript
AngularJS 简单应用实例
Jul 28 Javascript
基于原生JS实现图片裁剪
Aug 01 Javascript
基于JavaScript实现熔岩灯效果导航菜单
Jan 04 Javascript
element 结合vue 在表单验证时有值却提示错误的解决办法
Jan 22 Javascript
JS内部事件机制之单线程原理
Jul 02 Javascript
Vue实现按钮旋转和移动位置的实例代码
Aug 09 Javascript
JS实现匀速与减速缓慢运动的动画效果封装示例
Aug 27 Javascript
Vue中的基础过渡动画及实现原理解析
Dec 04 Javascript
vue插槽slot的理解和使用方法
Apr 03 Javascript
jquery添加div实现消息聊天框
Feb 08 jQuery
关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
Sep 04 #Javascript
原生JS实现获取及修改CSS样式的方法
Sep 04 #Javascript
微信小程序canvas拖拽、截图组件功能
Sep 04 #Javascript
mpvue写一个CPASS小程序的示例
Sep 04 #Javascript
Vue表单及表单绑定方法
Sep 04 #Javascript
elementUI Vue 单个按钮显示和隐藏的变换功能(两种方法)
Sep 04 #Javascript
为jquery的ajax请求添加超时timeout时间的操作方法
Sep 04 #jQuery
You might like
Blitz templates 最快的PHP模板引擎
2010/04/06 PHP
使用JSON实现数据的跨域传输的php代码
2011/12/20 PHP
Zend Framework动作助手Redirector用法实例详解
2016/03/05 PHP
PHP 文件锁与进程锁的使用示例
2017/08/07 PHP
js 小数取整的函数
2010/05/10 Javascript
javascript中创建对象的三种常用方法
2010/12/30 Javascript
JS将秒换成时分秒实现代码
2013/09/03 Javascript
JavaScript验证电子邮箱的函数
2014/08/22 Javascript
限制复选框最多选择项的实现代码
2016/05/30 Javascript
自己封装的一个简单的倒计时功能实例
2016/11/23 Javascript
js放到head中失效的原因与解决方法
2017/03/07 Javascript
基于JS实现html中placeholder属性提示文字效果示例
2018/04/19 Javascript
Egg.js 中 AJax 上传文件获取参数的方法
2018/10/10 Javascript
原生JS实现的放大镜特效示例【测试可用】
2018/12/08 Javascript
echarts实现词云自定义形状的示例代码
2019/02/20 Javascript
小程序关于请求同步的总结
2019/05/05 Javascript
javascript实现抢购倒计时程序
2019/08/26 Javascript
对layui初始化列表的CheckBox属性详解
2019/09/13 Javascript
Python用list或dict字段模式读取文件的方法
2017/01/10 Python
python3+dlib实现人脸识别和情绪分析
2018/04/21 Python
Django集成搜索引擎Elasticserach的方法示例
2019/06/04 Python
详解Python中字符串前“b”,“r”,“u”,“f”的作用
2019/12/18 Python
python 解决cv2绘制中文乱码问题
2019/12/23 Python
Python实现列表索引批量删除的5种方法
2020/11/16 Python
美国体育用品在线:Modell’s Sporting Goods
2018/06/07 全球购物
马来西亚和新加坡巴士票在线预订:CatchThatBus
2018/11/17 全球购物
比利时家具购买网站:Home24
2019/01/03 全球购物
美国排名第一的泳池用品直接来源:In The Swim
2019/09/23 全球购物
电气工程及自动化专业自荐书范文
2013/12/18 职场文书
法定代表人授权委托书
2014/09/19 职场文书
开会通知短信大全
2015/04/20 职场文书
入党介绍人意见怎么写
2015/06/03 职场文书
公司员工离职感言
2015/08/03 职场文书
Django实现在线无水印抖音视频下载(附源码及地址)
2021/05/06 Python
pytorch中的numel函数用法说明
2021/05/13 Python
js面向对象编程OOP及函数式编程FP区别
2022/07/07 Javascript