数组去重
时间: 2023-06-22 11:16:17 浏览: 28
数组去重有多种方法,以下是几种常见的方法:
1. 使用 Set:利用 Set 数据结构的特性,可以轻松实现数组去重。
```
const arr = [1, 2, 3, 2, 1];
const newArr = [...new Set(arr)];
console.log(newArr); // [1, 2, 3]
```
2. 使用 indexOf:遍历数组,利用 indexOf 方法判断元素是否已经出现过,如果没有出现过,则将其加入新数组。
```
const arr = [1, 2, 3, 2, 1];
const newArr = [];
for (let i = 0; i < arr.length; i++) {
if (newArr.indexOf(arr[i]) === -1) {
newArr.push(arr[i]);
}
}
console.log(newArr); // [1, 2, 3]
```
3. 使用 includes:与上述方法类似,使用 includes 方法判断元素是否已经出现过。
```
const arr = [1, 2, 3, 2, 1];
const newArr = [];
for (let i = 0; i < arr.length; i++) {
if (!newArr.includes(arr[i])) {
newArr.push(arr[i]);
}
}
console.log(newArr); // [1, 2, 3]
```
4. 使用 reduce:使用 reduce 方法遍历数组,将元素加入新数组,如果已经出现过,则不加入。
```
const arr = [1, 2, 3, 2, 1];
const newArr = arr.reduce((prev, cur) => {
if (!prev.includes(cur)) {
prev.push(cur);
}
return prev;
}, []);
console.log(newArr); // [1, 2, 3]
```
以上是几种常见的数组去重方法,选择哪种方法可以根据实际情况和个人喜好进行选择。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)