1.去重
方法一:set去重
ES6提供了新的數據結構Set。它類似於數組,但是成員的值都是唯一的,沒有重複的值。
Set函數可以接受一個數組(或類似數組的對象)作爲參數,用來初始化。
function unique (arr ){
var x = new Set(arr);
return [...x];
};
unique([1,2,3,4,5,2,3,4]) //1,2,3,4,5
方法二:filter去重
filter()接收的回調函數,其實可以有多個參數。通常我們僅使用第一個參數,表示Array的某個元素。回調函數還可以接收另外兩個參數,表示元素的位置和數組本身:
let arr = [1,2,3,4,5,6,7,4,5,6]
arr.filter(function(item,index,arr){
return arr.indexOf(item) === index
})
//[1,2,3,4,5,6,7]
2.篩選
方法一:for循環遍歷
如:場景:篩選出兩個數組中相等的值
function uniqueTree (uniqueArr,Arr) {
let uniqueChild = []
for(var i in Arr){
for(var k in uniqueArr){
if(uniqueArr[k] === Arr[i]){
uniqueChild.push(uniqueArr[k])
}
}
}
return uniqueChild
}
let a = [2, 10, 37, 38, 39, 4];
let b = [1,2,3,4,5,6,7,8,9,10];
uniqueTree(a,b) //2,4,10
方法二:filter 過濾掉相同項
var a=[1,2,3,4,5]
var b=[2,3,7,8,9]
a.filter(item=>b.indexOf(item)==-1) //1,4,5
方法三:filter+includes //留下相同項
var a=[1,2,3,4,5]
var b=[2,3,7,8,9]
a.filter(item=>b.includes(item)) //2,3
文章會持續更新,可以點關注看最新文章呦~✨❤️