JS資料演算法 去重

2021-10-25 05:31:34 字數 1322 閱讀 7806

將陣列轉為set(set自身帶有去重功能)

再將set轉為陣列

let arr =[1

,2,3

,2,2

,3,1

,7,8

,3,9

,4];

let newarr = array.

from

(new

set(arr));

console.

log(newarr)

將陣列每一項與後面所有項比較

如果後面所有項中不存在當前項,則將其新增到新陣列當中

let arr =[1

,2,3

,2,2

,3,1

,7,8

,3,9

,4];

let newarr =

;for

(let i =

0; i < arr.length; i++)}

console.

log(newarr)

把陣列中所有項以鍵值對形式插入obj當中

在插入前判斷obj中是否已存在當前鍵值對

如果已存在則將陣列中當前項用最後一項替換,並將陣列長度減一,已迴圈次數減一

否則向obj中插入當前鍵值對

let arr =[1

,2,3

,2,2

,3,1

,7,8

,3,9

,4];

let obj =

;for

(let i =

0; i < arr.length; i++

) obj[item]

= item;

}obj =

null

;console.

log(arr)

let arr =[1

,2,3

,2,2

,3,1

,7,8

,3,9

,4];

arr.

sort

((a, b)

=> a - b)

;arr = arr.

join

('@')+

'@';

let reg =

/(\d+@)\1*/g

;let ary =

;arr.

replace

(reg,

(val, group)

=>

)console.

log(ary)

JS去重演算法

1.遍歷陣列法 它是最簡單的陣列去重方法 indexof方法 實現思路 新建乙個陣列,遍歷去要重的陣列,當值不在新陣列的時候 indexof為 1 就加入該新陣列中 1 var arr 2,8,5,0,5,2,6,7,2 2function unique1 arr 8 9return hash 10...

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...