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 相关文章推荐
JavaScript 继承机制的实现(待续)
May 18 Javascript
jQuery1.4.2与老版本json格式兼容的解决方法
Feb 12 Javascript
JQuery伸缩导航练习示例
Nov 13 Javascript
jquery提示效果实例分析
Nov 25 Javascript
javascript实现限制上传文件大小
Feb 06 Javascript
浅谈jquery事件处理
Apr 24 Javascript
jQuery遍历节点树方法分析
Sep 08 Javascript
微信小程序 icon组件详细及实例代码
Oct 25 Javascript
jquery实现焦点轮播效果
Feb 23 Javascript
javaScript之split与join的区别(详解)
Nov 08 Javascript
vue 限制input只能输入正数的操作
Aug 05 Javascript
react如何快速设置文件路径别名
Apr 28 Javascript
关于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
PHP中Date()时间日期函数的使用方法小结
2011/04/20 PHP
使用PHP备份MySQL和网站发送到邮箱实例代码
2013/11/28 PHP
PHP中的排序函数sort、asort、rsort、krsort、ksort区别分析
2014/08/18 PHP
PHP处理Json字符串解码返回NULL的解决方法
2014/09/01 PHP
PHP环境中Memcache的安装和使用
2015/11/05 PHP
PHP HTTP 认证实例详解
2016/11/03 PHP
php 常用的系统函数
2017/02/07 PHP
thinkphp诸多限制条件下如何getshell详解
2020/12/09 PHP
网页前端优化之滚动延时加载图片示例
2013/07/13 Javascript
Boostrap入门准备之border box
2016/05/09 Javascript
总结jQuery插件开发中的一些要点
2016/05/16 Javascript
jQuery Easyui使用(一)之可折叠面板的布局手风琴菜单
2016/08/17 Javascript
JavaScript组合模式学习要点
2016/08/26 Javascript
在javaScript中检测数据类型的几种方式小结
2017/03/04 Javascript
解析Vue2 dist 目录下各个文件的区别
2017/11/22 Javascript
vue中动态添加class类名的方法
2018/09/05 Javascript
antd组件Upload实现自己上传的实现示例
2018/12/18 Javascript
vue自定义js图片碎片轮播图切换效果的实现代码
2019/04/28 Javascript
vue-test-utils初使用详解
2019/05/23 Javascript
浅谈微信小程序列表埋点曝光指南
2019/10/15 Javascript
Python实现的下载8000首儿歌的代码分享
2014/11/21 Python
python用10行代码实现对黄色图片的检测功能
2015/08/10 Python
python实时分析日志的一个小脚本分享
2017/05/07 Python
最近Python有点火? 给你7个学习它的理由!
2017/06/26 Python
python遍历文件夹下所有excel文件
2018/01/03 Python
Python查找两个有序列表中位数的方法【基于归并算法】
2018/04/20 Python
Django中的用户身份验证示例详解
2019/08/07 Python
通过Python实现Payload分离免杀过程详解
2020/07/13 Python
python3实现简单飞机大战
2020/11/29 Python
python3实现名片管理系统(控制台版)
2020/11/29 Python
实例教程 HTML5 Canvas 超炫酷烟花绽放动画实现代码
2014/11/05 HTML / CSS
城市轨道交通工程职业规划书范文
2014/01/18 职场文书
银行反四风对照检查材料
2014/09/29 职场文书
财务会计岗位职责
2015/02/03 职场文书
2015教师个人工作总结范文
2015/03/31 职场文书
Python 如何将integer转化为罗马数(3999以内)
2021/06/05 Python