普通陣列 陣列物件去重的幾種方法

2022-07-25 20:54:17 字數 1393 閱讀 8105

(1)es5方法! 利用 filter 和 indexof方法

let arr = [1, 1, 2, 3, undefined, null, null, 23, 'g', 'g']
function uniq (array))

}console.log(uniq(arr)) // [1, 2, 3, undefined, null, 23, "g"]

(2)es6方法! 利用 new set()方法配合es6 展開運算子:set物件允許你儲存任何型別的唯一值,無論是原始值或者是物件引用

let arr = [1, 1, 2, 3, undefined, null, null, 23, 'g', 'g']

console.log([...new set(arr)]) // [1, 2, 3, undefined, null, 23, "g"]

(3)es6方法! 利用 reduce

(1)對普通陣列去重

let arr = arr = [1, 2 , 2, ,3, 2 ,4 ,1, 1, 1, 2]

let newarr = arr.reduce(function (item, next) , )

console.log(newarr) // [1, 2, 3, 4]

(2)陣列物件去重

let arr2 = [,,

,,,]let newarr2 = arr.reduce(function (item, next) , )

console.log(newarr2)

find()方法返回陣列中滿足提供的測試函式的第乙個元素的值。否則返回undefined

const array1 = [5, 12, 8, 130, 44];

const found = array1.find(item => item > 10);

console.log(found); // 12

除了簡單的 for , do...while 迴圈外,還有 foreach,map

for 可以用 break 跳出迴圈遍歷外,foreach,map 不能跳出遍歷,

let arr = [1, 1, 2, 3, undefined, null, null, 23, "g", "g"]

for (let i = 0, len = arr.length; i < arr.len; i++)

}

陣列去重的幾種方法

實現思路 新建一新陣列,遍歷傳入陣列,值不在新陣列就加入該新陣列中 注意點 判斷值是否在陣列的方法 indexof 是ecmascript5 方法,ie8以下不支援,需多寫一些相容低版本瀏覽器 最簡單陣列去重法 function unique1 array return n 實現思路 新建一js物件...

陣列去重的幾種方法

記錄一些陣列去重的方法,如果有錯誤的地方,還望指正 1.利用es6中的set 去重特性 const arr 1,2,3,6,8,2,9,5,6,4,9 function uniq arr const resultarr1 uniq arr console.log resultarr1 2.利用inc...

陣列去重的幾種方法

function unique arr let arr 1,2,3,1,2,2,a b c c a 4 4,false,false,undefined,undefined,null,null nan,nan,console.log unique arr 1,2,3,a b c 4,false,und...