摘要:通过的和来实现通过的来实现新建一个数组,遍历老数组,通过方法来判断心数组是否添加老数组的值先对数组就行排序,然后再前后两两比较新建一个对象,通过对象的健值对来筛选数组
通过es6的Array.from和set来实现
var arr=[1,2,2,1,2,5,7,3,5,6,5]; function upset1_arr(arr){ var obj=new Set(arr); var new_arr=Array.from(obj); return new_arr; }
通过es6的...来实现
function upset1_arr(arr){ return [...new Set([arr])]; }新建一个数组,遍历老数组,通过indexof方法来判断心数组是否添加老数组的值
function upset2_arr(arr){ var new_arr=[]; for (var i = 0; i < arr.length; i++) { if(new_arr.indexOf(arr[i])==-1){ new_arr.push(arr[i]); } } return new_arr; }先对数组就行排序,然后再前后两两比较
function upset3_arr(arr){ var new_arr=[]; arr.sort(); for (var i = 0; i < arr.length; i++) { if(arr[i]!=arr[i+1]){ new_arr.push(arr[i]); } } return new_arr; }新建一个对象,通过对象的健值对来筛选数组
function upset4_arr(arr){ var new_arr=[],obj={}; for (var i = 0; i < arr.length; i++) { if(!obj[arr[i]]){ obj[arr[i]]=true; new_arr.push(arr[i]); } } return new_arr; }
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/85090.html
摘要:引子数组去重是一个老生常谈的话题,在面试中也经常会被问道。其中如果数组是排序的,去重运算效率更高,因为排序能够将相同的数排列在一起,方便前后比较。当数组有序对于对象的去重,我们知道为,所以使用比较对象在实际场景中没有意义。 引子 数组去重是一个老生常谈的话题,在面试中也经常会被问道。对于去重,有两种主流思想: 先排序,线性遍历后去重,时间复杂度O(n*log2n); 使用哈希,空间换...
摘要:专题系列第三篇,讲解各种数组去重方法,并且跟着写一个前言数组去重方法老生常谈,既然是常谈,我也来谈谈。它类似于数组,但是成员的值都是唯一的,没有重复的值。 JavaScript 专题系列第三篇,讲解各种数组去重方法,并且跟着 underscore 写一个 unique API 前言 数组去重方法老生常谈,既然是常谈,我也来谈谈。 双层循环 也许我们首先想到的是使用 indexOf 来循...
摘要:数组去重,一般都是在面试的时候才会碰到,一般是要求手写数组去重方法的代码。如果是被提问到,数组去重的方法有哪些你能答出其中的种,面试官很有可能对你刮目相看。数组去重的方法一利用去重中最常用不考虑兼容性,这种去重的方法代码最少。 数组去重,一般都是在面试的时候才会碰到,一般是要求手写数组去重方法的代码。如果是被提问到,数组去重的方法有哪些?你能答出其中的10种,面试官很有可能对你刮目相看...
摘要:工作过程中经常会用到数组去重,用到的时候往往一时想不到好方法,所以这里来总结一下去重方法。和方法分别为添加成员方法和得到键值方法。因此,利用方法也可以实现数组的去重。 工作过程中经常会用到数组去重,用到的时候往往一时想不到好方法,所以这里来总结一下去重方法。使用es6去重代码很简单,而且ES6已经相当普及了。所以先来介绍一下es6中的方法。 1.ES6中Map结构方法 function...
阅读 994·2021-11-22 14:56
阅读 942·2021-11-11 16:54
阅读 7088·2021-09-23 11:55
阅读 2955·2021-09-22 15:57
阅读 2772·2021-08-27 16:25
阅读 653·2019-08-30 15:55
阅读 1640·2019-08-30 15:43
阅读 1577·2019-08-30 14:23