ES6提供了一些新的方法來實(shí)現(xiàn)數(shù)組去重操作。下面我將介紹幾種常用的方法。
方法一:使用Set
ES6中引入了Set數(shù)據(jù)結(jié)構(gòu),它類似于數(shù)組,但是成員的值都是唯一的,沒有重復(fù)的值。我們可以通過將數(shù)組轉(zhuǎn)換為Set,然后再將Set轉(zhuǎn)換回?cái)?shù)組的方式來實(shí)現(xiàn)去重。
```javascript
let arr = [1, 2, 2, 3, 4, 4, 5];
let uniqueArr = Array.from(new Set(arr));
console.log(uniqueArr); // [1, 2, 3, 4, 5]
```
方法二:使用Array.prototype.filter()
我們可以使用Array.prototype.filter()方法來過濾掉重復(fù)的元素。
```javascript
let arr = [1, 2, 2, 3, 4, 4, 5];
let uniqueArr = arr.filter((item, index) => {
return arr.indexOf(item) === index;
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]
```
方法三:使用Array.prototype.reduce()
我們可以使用Array.prototype.reduce()方法來遍歷數(shù)組,并將不重復(fù)的元素添加到一個(gè)新的數(shù)組中。
```javascript
let arr = [1, 2, 2, 3, 4, 4, 5];
let uniqueArr = arr.reduce((prev, curr) => {
if (!prev.includes(curr)) {
prev.push(curr);
}
return prev;
}, []);
console.log(uniqueArr); // [1, 2, 3, 4, 5]
```
方法四:使用ES6的擴(kuò)展運(yùn)算符
我們可以使用ES6的擴(kuò)展運(yùn)算符(...)來將數(shù)組展開,并使用Set數(shù)據(jù)結(jié)構(gòu)來去重。
```javascript
let arr = [1, 2, 2, 3, 4, 4, 5];
let uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // [1, 2, 3, 4, 5]
```
以上是幾種常用的ES6去重方法,你可以根據(jù)具體的需求選擇適合的方法來進(jìn)行操作。