js 中如何判断array中有重复元素?
时间: 2024-05-07 10:19:45 浏览: 14
可以使用 Set 数据结构,将数组转换成 Set,如果转换后的 Set 长度小于原数组长度,说明数组中存在重复元素。
示例代码:
```javascript
function hasDuplicate(arr) {
return new Set(arr).size !== arr.length;
}
// 测试
console.log(hasDuplicate([1, 2, 3])); // false
console.log(hasDuplicate([1, 2, 3, 2])); // true
```
另外,如果需要找到数组中的重复元素,也可以使用 Map 数据结构来实现。具体方法是遍历数组,将元素作为 key 存储在 Map 中,如果 key 已经存在,则说明该元素是重复元素。示例代码:
```javascript
function findDuplicate(arr) {
const map = new Map();
const duplicates = [];
for (const item of arr) {
if (map.has(item)) {
duplicates.push(item);
} else {
map.set(item, true);
}
}
return duplicates;
}
// 测试
console.log(findDuplicate([1, 2, 3])); // []
console.log(findDuplicate([1, 2, 3, 2])); // [2]
```
相关推荐
![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)