欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

javascript arry去重

傅智翔1年前8瀏覽0評論

在javascript中,我們經常需要處理數組中的元素,而在實際的操作中,常常會遇到重復元素的問題。對于這種情況,我們通常需要使用數組去重操作。本文將介紹Javascript中常用的數組去重方法,并對其進行詳細的講解。

方法一:利用filter()函數

var arr = [1,1,2,2,3,4,4,5];
var newArr = arr.filter(function(element,index,self){
return self.indexOf(element) === index;
});
console.log(newArr);
// [1, 2, 3, 4, 5]

這里用到了filter()函數,它接受一個callback函數作為參數。callback函數的回調參數分別為元素、元素索引和原數組本身。

具體實現就是利用indexOf()方法判斷當前元素是否是第一次出現,保留第一次出現的元素,去掉重復出現的元素。

方法二:利用Set()函數

var arr = [1,1,2,2,3,4,4,5];
var set = new Set(arr);
var newArr = Array.from(set);
console.log(newArr);
// [1, 2, 3, 4, 5]

這里用到了ES6新增的Set()函數。Set()函數接受一個數組作為參數,可以去掉數組中的重復元素。

最后通過Array.from(set)方法將Set對象轉換為數組,即可得到一個去重后的數組。

方法三:利用reduce()函數

var arr = [1,1,2,2,3,4,4,5];
var newArr = arr.reduce(function(prev,cur){
if(prev.indexOf(cur) === -1){
prev.push(cur);
}
return prev;
},[]);
console.log(newArr);
// [1, 2, 3, 4, 5]

這里用到了reduce()函數,它將數組中的每個元素通過callback函數進行處理,并返回一個累計值。

具體實現即利用indexOf()方法判斷當前元素是否已存在于累計值中,如果不存在則將其添加進去。

綜上,以上三種方法都可以去除javascript數組中的重復元素。具體使用方法可根據實際需求進行選擇。在實際開發中,建議使用ES6新增的Set()函數進行數組去重,因為它的運行效率更高。