let arr1 = array.from(new array(100000), (x, index)=>);
let arr2 = array.from(new array(50000), (x, index)=>);
//寫一下方法中的去重方法
function distinct1(){}
let start = new date().gettime();
console.log('開始陣列去重');
console.log('去重後的長度', distinct1(arr1, arr2).length);
let end = new date().gettime();
console.log('耗時', end - start);
使用兩個陣列,乙個為10w,另乙個為5w,所以加起來是15w的陣列長進行去重
以下方法按照效率從高到低排序
使用物件的屬性不會重複的特性
//使用物件的屬性不會重複的特性
2. es6的map結構
3. es6的set結構
//es6的set
4. 先排序,後比較相鄰的兩個元素
//先排序,後比較相鄰的兩個元素
7. 雙重迴圈
借鑑個人部落格
js陣列去重效率測試
最近一次面試遇到了乙個問題,用原生js至少實現三種數思路,巴拉巴拉 描述完畢.另乙個問題又來了,請分析一下哪一種的效率最高,當時我就想,應該越是原生的 效率應該越高吧.然後就現實並非如此,面試自然也就無疾而終,然後我回家做了一番測試,結果如下 1 雙層遍歷 default 7.00708007812...
JS陣列去重,物件去重
例項1根據indexof去重,indexof的好處就是返回的是首次出現的位置,這樣後面即使出現的值一樣,也只能返回第一次出現的索引,當然這個只適用於簡單的陣列 物件陣列去重 const objarr const obj const newobjarr for let i 0 i objarr.len...
比較常用的陣列去重以及分析
1.0 陣列去重 1 第一種方法 思路 迴圈原陣列獲取陣列中的每一項 for,for.of,foreach,map 將每一項往新陣列中,但是,放之前需要判斷一下,只有新陣列中沒有這一項才把這一項放進去 let ary 1,22,13,14,1,2,12,13,14,1,1,0,5,3,2 let a...