當(dāng)前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
JS中数组的去重
記一道JS數(shù)組去重題
前言,有一次去面試,面試官問我一個(gè)數(shù)組去重題。有哪些方法可以實(shí)現(xiàn)。
當(dāng)時(shí)第一反應(yīng)是hash去重,第一個(gè)想法是自己去實(shí)現(xiàn)去重算法,(太弱了)。
ES6中的Set類
不過在ES6中新加的Set類就是一個(gè)hash集合的實(shí)現(xiàn),現(xiàn)在我們就用Set來實(shí)現(xiàn)下去重。
//首先生成一個(gè)帶有重復(fù)元素的數(shù)組 [ 0, 1, 1, 2, 2, 3, 3, 4, 4, 5 ] var arr = Array.from(Array(10),(v,k)=>Math.round(k/2));var set = new Set(arr);//去重后的結(jié)果 [ 0, 1, 2, 3, 4, 5 ] var deduplicationArr = [...set];Map類
Map跟Set差不多,都是基于Hash集合的實(shí)現(xiàn),不過Map是鍵值對的,所以利用Map可以實(shí)現(xiàn)鍵值對按鍵的的去重。
var map = new Map();map.set('key1','value1'); map.set('key1','new-value1');//output: 'new-value1' var value = map.get('key1');轉(zhuǎn)載于:https://www.cnblogs.com/m-meng/p/10828383.html
總結(jié)
- 上一篇: 论数据集成技术的演变和发展 3/3
- 下一篇: 编程语言“铁三角”,JavaScript