js 陣列去重

2021-09-09 08:57:13 字數 614 閱讀 9209

現在總結了4中方法,先記下來

迴圈時,取出乙個元素與物件對比,不重複則放進新陣列裡,並把這個元素的內容作為物件屬性,並賦值為1

var obj = {};

arr.foreach((val)=>else

})console.log(newarr)

利用indexof,迴圈時判斷元素是否在新陣列裡,如果不在,則放進新陣列

arr.foreach(val => 

})console.log(newarr1)

利用filter和indexof,過濾函式裡判斷元素的索引是否相等,如相等,則返回

var newarr2;

newarr2 = arr.filter((val,index,self)=>)

console.log(newarr2)

利用es6的set,超級好用,再用array.from轉回來

var newarr3 = array.from(new set(arr))

console.log(newarr3)

JS陣列去重,物件去重

例項1根據indexof去重,indexof的好處就是返回的是首次出現的位置,這樣後面即使出現的值一樣,也只能返回第一次出現的索引,當然這個只適用於簡單的陣列 物件陣列去重 const objarr const obj const newobjarr for let i 0 i objarr.len...

js 陣列去重

function unique arr if isrepeated return result 建立乙個新的陣列,迴圈原有的陣列,每取乙個數就迴圈判斷新建的陣列中是否有和這個相等的值,沒有則插入。方法簡單,但是有雙重迴圈,陣列大了之後效率低。所以能一次迴圈解決最好。var str new array...

JS 陣列去重

我總共想出了三種演算法來實現這個目的 array.prototype.unique1 function return n array.prototype.unique2 function r n為hash表,r為臨時陣列 for var i 0 i this.length i 遍歷當前陣列 retu...