成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

數(shù)組去重

LiuRhoRamen / 390人閱讀

摘要:數(shù)組去重在前端工作中是必不可少的,接下來(lái)我就總結(jié)了個(gè)人常用的幾種方式一環(huán)境書(shū)寫(xiě)傳統(tǒng)方式效率不是是很高通過(guò)模擬的存儲(chǔ)方式效率優(yōu)于通過(guò)判斷數(shù)組元素第一次出現(xiàn)的位置是否為當(dāng)前位置來(lái)實(shí)現(xiàn)效率是的兩倍,推薦從第二項(xiàng)開(kāi)始遍歷如果當(dāng)前數(shù)組元素在數(shù)組中

數(shù)組去重在前端工作中是必不可少的,接下來(lái)我就總結(jié)了個(gè)人常用的幾種方式

一. ES5環(huán)境書(shū)寫(xiě) 1. 傳統(tǒng)方式:效率不是是很高
var data = [1,3,2,1,2];
Array.prototype.unique = function(){
    for(var i=0,arr=[],len=this.length;i
2.通過(guò)模擬map的hash存儲(chǔ)方式:效率優(yōu)于1
var data = [1,3,2,1,2];
Array.prototype.unique = function(){
    for(var i=0,r={},n=[],len=this.length;i
3.通過(guò)indexOf判斷數(shù)組元素第一次出現(xiàn)的位置是否為當(dāng)前位置來(lái)實(shí)現(xiàn):效率是2的兩倍,推薦
var data = [1,3,2,1,2];
Array.prototype.unique = function(){
var arr = [this[0]];
    //從第二項(xiàng)開(kāi)始遍歷 for(var i=1,len=this.length;i //如果當(dāng)前數(shù)組元素在數(shù)組中出現(xiàn)的第一次位置不是i,說(shuō)明是重復(fù)元素 if(this.indexOf(this[i]) == i) arr.push(this[i]); } return arr; }; console.log(data.unique());
二. ES6環(huán)境

通過(guò)Set數(shù)據(jù)結(jié)構(gòu)中,無(wú)重復(fù)元素的特性來(lái)實(shí)現(xiàn):比較推崇

var data = [1,3,2,1,2];
let arr = [...new Set(data)];
console.log(arr);

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/88683.html

相關(guān)文章

  • JS數(shù)組去重總結(jié)

    摘要:數(shù)組去重,一般會(huì)在面試的時(shí)候才會(huì)碰到,要求手寫(xiě)數(shù)組去重方法的代碼。在實(shí)際項(xiàng)目中碰到的數(shù)組去重,一般都是后臺(tái)去處理,很少讓前端處理數(shù)組去重。數(shù)組去重的方法一利用去重中最常用如果不考慮兼容性,這種去重的方法代碼最少。 數(shù)組去重,一般會(huì)在面試的時(shí)候才會(huì)碰到,要求手寫(xiě)數(shù)組去重方法的代碼。如果是被提問(wèn)到,數(shù)組去重的方法有哪些?你能答出其中的10種,面試官很有可能對(duì)你刮目相看。 在實(shí)際項(xiàng)目中碰到的...

    whinc 評(píng)論0 收藏0
  • 跟underscore一起學(xué)數(shù)組去重

    摘要:引子數(shù)組去重是一個(gè)老生常談的話題,在面試中也經(jīng)常會(huì)被問(wèn)道。其中如果數(shù)組是排序的,去重運(yùn)算效率更高,因?yàn)榕判蚰軌驅(qū)⑾嗤臄?shù)排列在一起,方便前后比較。當(dāng)數(shù)組有序?qū)τ趯?duì)象的去重,我們知道為,所以使用比較對(duì)象在實(shí)際場(chǎng)景中沒(méi)有意義。 引子 數(shù)組去重是一個(gè)老生常談的話題,在面試中也經(jīng)常會(huì)被問(wèn)道。對(duì)于去重,有兩種主流思想: 先排序,線性遍歷后去重,時(shí)間復(fù)雜度O(n*log2n); 使用哈希,空間換...

    flybywind 評(píng)論0 收藏0
  • JavaScript專題之數(shù)組去重

    摘要:專題系列第三篇,講解各種數(shù)組去重方法,并且跟著寫(xiě)一個(gè)前言數(shù)組去重方法老生常談,既然是常談,我也來(lái)談?wù)?。它類似于?shù)組,但是成員的值都是唯一的,沒(méi)有重復(fù)的值。 JavaScript 專題系列第三篇,講解各種數(shù)組去重方法,并且跟著 underscore 寫(xiě)一個(gè) unique API 前言 數(shù)組去重方法老生常談,既然是常談,我也來(lái)談?wù)劇?雙層循環(huán) 也許我們首先想到的是使用 indexOf 來(lái)循...

    fsmStudy 評(píng)論0 收藏0
  • JavaScript數(shù)組去重(12種方法,史上最全)

    摘要:數(shù)組去重,一般都是在面試的時(shí)候才會(huì)碰到,一般是要求手寫(xiě)數(shù)組去重方法的代碼。如果是被提問(wèn)到,數(shù)組去重的方法有哪些你能答出其中的種,面試官很有可能對(duì)你刮目相看。數(shù)組去重的方法一利用去重中最常用不考慮兼容性,這種去重的方法代碼最少。 數(shù)組去重,一般都是在面試的時(shí)候才會(huì)碰到,一般是要求手寫(xiě)數(shù)組去重方法的代碼。如果是被提問(wèn)到,數(shù)組去重的方法有哪些?你能答出其中的10種,面試官很有可能對(duì)你刮目相看...

    rozbo 評(píng)論0 收藏0
  • JavaScript數(shù)組方法之數(shù)組去重方法

    摘要:工作過(guò)程中經(jīng)常會(huì)用到數(shù)組去重,用到的時(shí)候往往一時(shí)想不到好方法,所以這里來(lái)總結(jié)一下去重方法。和方法分別為添加成員方法和得到鍵值方法。因此,利用方法也可以實(shí)現(xiàn)數(shù)組的去重。 工作過(guò)程中經(jīng)常會(huì)用到數(shù)組去重,用到的時(shí)候往往一時(shí)想不到好方法,所以這里來(lái)總結(jié)一下去重方法。使用es6去重代碼很簡(jiǎn)單,而且ES6已經(jīng)相當(dāng)普及了。所以先來(lái)介紹一下es6中的方法。 1.ES6中Map結(jié)構(gòu)方法 function...

    CarlBenjamin 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<