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 相关文章推荐
侧栏跟随滚动的简单实现代码
Mar 18 Javascript
Textarea根据内容自适应高度
Oct 28 Javascript
零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门
Dec 20 Javascript
jQuery中:first选择器用法实例
Dec 30 Javascript
JQuery的ON()方法支持的所有事件罗列
Feb 28 Javascript
基于HTML5上使用iScroll实现下拉刷新,上拉加载更多
May 21 Javascript
Javascript中this绑定的3种方法与比较
Oct 13 Javascript
微信小程序地图(map)组件点击(tap)获取经纬度的方法
Jan 10 Javascript
JS实现的合并两个有序链表算法示例
Feb 25 Javascript
Vue中el-form标签中的自定义el-select下拉框标签功能
Apr 20 Javascript
Vue中的this.$options.data()和this.$data用法说明
Jul 26 Javascript
解决nuxt页面中mounted、created、watch执行两遍的问题
Nov 05 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读取数据库信息的几种方法
2008/05/24 PHP
php简单防盗链实现方法
2015/07/29 PHP
在IE,Firefox,Safari,Chrome,Opera浏览器上调试javascript
2008/12/02 Javascript
JavaScript 直接操作本地文件的实现代码
2009/12/01 Javascript
本地图片预览(支持IE6/IE7/IE8/Firefox3)经验总结
2013/03/25 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
基于jQuery.Hz2Py.js插件实现的汉字转拼音特效
2015/05/07 Javascript
jQuery实现在最后一个元素之前插入新元素的方法
2015/07/18 Javascript
DEDECMS如何为文章添加HOT NEW标志图片
2015/08/14 Javascript
JavaScript事件类型中焦点、鼠标和滚轮事件详解
2016/01/25 Javascript
JQuery ztree带筛选、异步加载实例讲解
2016/02/25 Javascript
JS从数组中随机取出几个数组元素的方法
2016/08/02 Javascript
Jquery组件easyUi实现选项卡切换示例
2016/08/23 Javascript
easyUI combobox实现联动效果
2017/01/17 Javascript
详解使用React全家桶搭建一个后台管理系统
2017/11/04 Javascript
bootstrap响应式工具使用详解
2017/11/29 Javascript
记一次webpack3升级webpack4的踩坑经历
2018/06/12 Javascript
js实现前面自动补全位数的方法
2018/10/10 Javascript
微信小程序实现工作时间段选择
2019/02/15 Javascript
python采用getopt解析命令行输入参数实例
2014/09/30 Python
Python单例模式实例详解
2017/03/01 Python
Python 常用的安装Module方式汇总
2017/05/06 Python
用十张图详解TensorFlow数据读取机制(附代码)
2018/02/06 Python
python 3.7.0 下pillow安装方法
2018/08/27 Python
详解Python中正则匹配TAB及空格的小技巧
2019/07/26 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
惠普墨西哥官方商店:HP墨西哥
2016/12/01 全球购物
德国宠物用品、宠物食品及水族馆网上商店:ZooRoyal
2017/07/09 全球购物
英国最大的网上药品商店:Chemist Direct
2017/12/16 全球购物
毕业自荐信
2013/12/16 职场文书
小学数学教学经验交流材料
2014/05/22 职场文书
租房安全协议书
2014/08/20 职场文书
大学毕业生自我鉴定范文
2019/06/21 职场文书
2019年幼儿园管理条例范本!
2019/07/17 职场文书
在Django中使用MQTT的方法
2021/05/10 Python
windows系统安装配置nginx环境
2022/06/28 Servers