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 网页跳转的方法
Dec 24 Javascript
Javascript 验证上传图片大小[客户端]
Aug 01 Javascript
js parseInt(&quot;08&quot;)未指定进位制问题
Jun 19 Javascript
js时间日期和毫秒的相互转换
Feb 22 Javascript
Highcharts学习之数据列
Aug 03 Javascript
原生JS实现隐藏显示图片 JS实现点击切换图片效果
Jan 27 Javascript
vuejs+element-ui+laravel5.4上传文件的示例代码
Aug 12 Javascript
JS Object.preventExtensions(),Object.seal()与Object.freeze()用法实例分析
Aug 25 Javascript
解决webpack多页面内存溢出的方法示例
Oct 08 Javascript
小程序实现投票进度条
Nov 20 Javascript
javascript实现计算器功能
Mar 30 Javascript
Vue双向绑定实现原理与方法详解
May 07 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动态变静态原理
2006/11/25 PHP
ecshop适应在PHP7的修改方法解决报错的实现
2016/11/01 PHP
php生成无限栏目树
2017/03/16 PHP
php语法检查的方法总结
2019/01/21 PHP
Google Map API更新实现用户自定义标注坐标
2009/07/29 Javascript
jquery监控数据是否变化(修正版)
2011/04/12 Javascript
js 判断上传文件大小及格式代码
2013/11/13 Javascript
js函数内变量的作用域分析
2015/01/12 Javascript
JavaScript基于setTimeout实现计数的方法
2015/05/08 Javascript
jQuery实现的经典滑动门效果
2015/09/22 Javascript
利用JQuery直接调用asp.net后台的简单方法
2016/10/27 Javascript
js控制台输出的方法(详解)
2016/11/26 Javascript
原生js实现电商侧边导航效果
2017/01/19 Javascript
vue拦截器Vue.http.interceptors.push使用详解
2017/04/22 Javascript
JavaScript之Map和Set_动力节点Java学院整理
2017/06/29 Javascript
详解VueJS 数据驱动和依赖追踪分析
2017/07/26 Javascript
Vue2.0父子组件传递函数的教程详解
2017/10/16 Javascript
微信小程序返回多级页面的实现方法
2017/10/27 Javascript
详解关于Angular4 ng-zorro使用过程中遇到的问题
2018/12/05 Javascript
详解基于webpack&amp;gettext的前端多语言方案
2019/01/29 Javascript
js实现批量删除功能
2020/08/27 Javascript
python将xml xsl文件生成html文件存储示例讲解
2013/12/03 Python
Python入门教程之if语句的用法
2015/05/14 Python
解决nohup执行python程序log文件写入不及时的问题
2019/01/14 Python
PyInstaller将Python文件打包为exe后如何反编译(破解源码)以及防止反编译
2020/04/15 Python
python实现数据结构中双向循环链表操作的示例
2020/10/09 Python
Python实现哲学家就餐问题实例代码
2020/11/09 Python
利用HTML5中Geolocation获取地理位置调用Google Map API在Google Map上定位
2013/01/23 HTML / CSS
简单的HTML5初步入门教程
2015/09/29 HTML / CSS
线程同步的方法
2016/11/23 面试题
企业员工薪酬方案
2014/06/04 职场文书
党员剖析材料范文
2014/12/18 职场文书
幼儿园食品安全责任书
2015/05/08 职场文书
2015年班组建设工作总结
2015/05/13 职场文书
Mysql实现简易版搜索引擎的示例代码
2021/08/30 MySQL
Python测试框架pytest核心库pluggy详解
2022/08/05 Golang