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利用Array.splice实现Array的insert/remove
Jan 13 Javascript
jQuery消息提示框插件Tipso
May 04 Javascript
jQuery实现Tab选项卡切换效果简单演示
Nov 23 Javascript
JS与Ajax Get和Post在使用上的区别实例详解
Jun 08 Javascript
JavaScript原生编写《飞机大战坦克》游戏完整实例
Jan 04 Javascript
jQuery实现ajax无刷新分页页码控件
Feb 28 Javascript
利用node.js爬取指定排名网站的JS引用库详解
Jul 25 Javascript
Vue结合SignalR实现前后端实时消息同步
Sep 19 Javascript
sublime text配置node.js调试(图文教程)
Nov 23 Javascript
微信小程序时间控件picker view使用详解
Dec 28 Javascript
中级前端工程师必须要掌握的27个JavaScript 技巧(干货总结)
Sep 23 Javascript
vue-cli创建的项目中的gitHooks原理解析
Feb 14 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+SqlServer实现分页显示
2006/10/09 PHP
谈谈PHP的输入输出流
2007/02/14 PHP
10条PHP高级技巧[修正版]
2011/08/02 PHP
destoon各类调用汇总
2014/06/20 PHP
php与python实现的线程池多线程爬虫功能示例
2016/10/12 PHP
jquery中的$(document).ready()与window.onload的区别
2009/11/18 Javascript
javascript 使用 NodeList需要注意的问题
2013/03/04 Javascript
jQuery图片的展开和收缩实现代码
2013/04/16 Javascript
Javascript中this的用法详解
2014/09/22 Javascript
js中this的用法实例分析
2015/01/10 Javascript
jQuery构造函数init参数分析
2015/05/13 Javascript
基于jQuery实现网页打印功能
2015/12/01 Javascript
Vue实例中生命周期created和mounted的区别详解
2017/08/25 Javascript
Vue.js组件间的循环引用方法示例
2017/12/27 Javascript
微信小程序动态生成二维码的实现代码
2018/07/25 Javascript
小程序实现五星点评效果
2018/11/03 Javascript
js中async函数结合promise的小案例浅析
2019/04/14 Javascript
axios封装,使用拦截器统一处理接口,超详细的教程(推荐)
2019/05/02 Javascript
Vue的生命周期操作示例
2019/09/17 Javascript
vux-scroller实现移动端上拉加载功能过程解析
2019/10/08 Javascript
Vue的状态管理vuex使用方法详解
2020/02/05 Javascript
[01:06:19]DOTA2-DPC中国联赛定级赛 LBZS vs SAG BO3第二场 1月8日
2021/03/11 DOTA
python3实现字符串操作的实例代码
2019/04/16 Python
Python 运行.py文件和交互式运行代码的区别详解
2019/07/02 Python
Django 1.10以上版本 url 配置注意事项详解
2019/08/05 Python
Python restful框架接口开发实现
2020/04/13 Python
css3 border-radius属性详解
2017/07/05 HTML / CSS
英国领先的男装设计师服装购物网站:Mainline Menswear
2018/02/04 全球购物
西班牙品牌鞋子、服装和配饰在线商店:Esdemarca
2021/02/17 全球购物
2014年消防工作实施方案
2014/02/20 职场文书
会计工作决心书
2014/03/11 职场文书
群众路线学习笔记范文
2014/11/06 职场文书
交通事故死亡赔偿协议书
2014/12/03 职场文书
房产公证书
2015/01/23 职场文书
2016习总书记系列重要讲话心得体会
2016/01/15 职场文书
Python获取百度热搜的完整代码
2021/04/07 Python