数组去重的几种方法

1.使用数组方法indexOf来判断 IE8--不兼容
function sele(arr){var temp = [];for( var i = 0 ; i < arr.length ; i++ ){if( temp.indexOf( arr[ i ] ) == -1 ){temp.push( arr[ i ] );}}return temp;
}
2.使用数组方法indexOf第二种方法 IE8--不兼容
function sele( arr ) {var temp = [];for( var i = 0 ; i < arr.length ; i++ ){if( arr.indexOf( arr[ i ] ) == i ){temp.push( arr[ i ] );}}return temp;
}
3.使用另一种比较酷的循环方法
function sele( arr ) {var temp = [];for( var i = 0 ; i < arr.length ; i++ ){for( var j = i + 1 ; j < arr.length ; j++ ){if( arr[ i ] === arr[ j ] ){j = ++i;}}temp.push( arr[ i ] );}return temp;
}
4.使用es6中includes方法
function sele( arr ) {var temp = [];arr.forEach( ( v ) => {temp.includes( v ) || temp.push( v );} )return temp;
}

转载于:https://www.cnblogs.com/blackz/p/6622873.html

面试题----几种数组去重方式相关推荐

  1. 面试题——4种数组去重的方法

    数组去重或者其衍生作为笔试题或者机试题出现的几率也是很大的,写出的方法越多,则让面试官觉得你思维越开阔,那么成功的几率当然就大了. 废话不多说,下面来说说下面我整理的4中数组去重的方法 方法一: fi ...

  2. Java数组去重的多种方法,[Java教程]JavaScript常见的五种数组去重的方式

    [Java教程]JavaScript常见的五种数组去重的方式 0 2016-12-14 15:00:17 ▓▓▓▓▓▓ 大致介绍 JavaScript的数组去重问题在许多面试中都会遇到,现在做个总结 ...

  3. JS几种数组遍历方式以及性能分析对比

    前言 这一篇与上一篇 JS几种变量交换方式以及性能分析对比 属于同一个系列,本文继续分析JS中几种常用的数组遍历方式以及各自的性能对比 起由 在上一次分析了JS几种常用变量交换方式以及各自性能后,觉得 ...

  4. js中遍历数组加到新数组_JS几种数组遍历方式总结

    JS数组遍历的几种方式 S数组遍历的几种方式 JS数组遍历,基本就是for,forin,foreach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比 第一 ...

  5. 超全的12种数组去重的方法

    前言 数组去重,可以说是一个比较常见的面试题,今天来盘点一下都有哪些方法可以实现数组去重. 方法1.双重for循环 这是一个最笨的方法,双重循环. var arr = [1, 2, 3,4 ,5,6, ...

  6. JS几种数组遍历方式总结

    JS数组遍历的几种方式 JS数组遍历,基本就是for,forin,foreach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比 第一种:普通for循环 代 ...

  7. JS常见的几种数组去重方法

    总结一下JS中用到的数组去重的方法  方法一: 该方法利用对象的属性值不能相同: function arrDelLikeElement (array) {const result = [];const ...

  8. C++中常用数组及几种数组定义方式

    一,一维数组 1,数组在内存中是连续的内存空间: 2,数组的数据类型必须一致: 数组定义三种方式: 第一种定义 只定义,不初始化: 数组类型 数组名 [数组长度]; int arr[5]; 第二种定义 ...

  9. 三中好用的数组去重方式

    var a = [5,6,5,4,'3',{},3,'字符'] 方法一:建立新数组,利用indexOf判断是否存在于新数组中,不存在则push到新数组,最后返回新数组 function unique0 ...

最新文章

  1. 这7个实用又强大的软件,真的惊艳到我了!
  2. 修改jar中的class文件
  3. C++中this指针的用法详解
  4. 支付宝个人账单出来了,这里有最全的查看攻略!
  5. ImageLoader设置圆形图片
  6. 【BZOJ4028】[HEOI2015]公约数数列(分块/数量级很小法)
  7. 指针数组和数组指针和函数指针
  8. 现代软件工程讲义 3 代码规范与代码复审
  9. 阿里专家常昊:新人如何上手项目管理?
  10. UI设计素材|图标在UI设计界面当中起到什么作用
  11. HTTP 如何传输大文件
  12. 【收藏】RPM包制作和spec文件详解
  13. html5学习之canvas模块的简单使用,作画三角形、圆形、矩形等
  14. mysql数据库原理及应用教案_《数据库原理及应用》全套教案.doc
  15. Vue小说阅读器(仿追书神器)
  16. 驱动小黑的红点+中键TrackPoint
  17. Windows驱动开发(三)一个WDF入门实例
  18. 【顺序表】SqList *L是什么意思
  19. 11.计算机基础之计算机网络基础
  20. 没有Realek高清音频管理器,Win10系统没有声音怎么办?

热门文章

  1. 电脑达人教你怎么解决Win7系统盘渐渐变小的问题
  2. LeetCode(Java) 两数相加
  3. 【LDA学习系列】MCMC之Metropolis-Hastings采样算法python代码理解
  4. 2009-08-19股市大跌分析(转载)
  5. Netbeans OpenGL使用
  6. Appium 移动端自动化 - Android SDK的安装与配置,使用安卓SDK连接手机实例演示
  7. Java 技术篇-利用exe4j工具生成exe文件实例演示,IntelliJ IDEA将项目转化为jar包方法,运行生成后的程序弹出exe4j提示处理,生成的程序显示控制台设置方法
  8. chrome 技巧篇-如何查看web元素绑定的监听事件
  9. C#委托及事件 详解(讲得比较透彻)
  10. 第八周实践项目8 稀疏矩阵的三元组表示的实现及应用