js判断数组中元素是否重复两个for循环写法
时间: 2023-05-19 17:01:46 浏览: 170
可以使用 Set 数据结构来判断数组中元素是否重复,代码如下:
```javascript
function isDuplicate(arr) {
return new Set(arr).size !== arr.length;
}
```
这个函数接收一个数组作为参数,使用 Set 数据结构将数组去重,然后比较去重后的数组长度和原数组长度是否相等,如果不相等,则说明数组中有重复元素。
另外,也可以使用 indexOf 和 lastIndexOf 方法来判断数组中元素是否重复,代码如下:
```javascript
function isDuplicate(arr) {
for (let i = 0; i < arr.length; i++) {
if (arr.indexOf(arr[i]) !== arr.lastIndexOf(arr[i])) {
return true;
}
}
return false;
}
```
这个函数使用两个 for 循环遍历数组,对于每个元素,使用 indexOf 方法查找第一个出现的位置和 lastIndexOf 方法查找最后一个出现的位置,如果它们不相等,则说明数组中有重复元素。
相关问题
js判断数组中元素是否重复es5写法
可以使用indexOf和lastIndexOf方法来判断数组中元素是否重复,具体代码如下:
function isDuplicate(arr) {
for (var i = 0; i < arr.length; i++) {
if (arr.indexOf(arr[i]) !== arr.lastIndexOf(arr[i])) {
return true;
}
}
return false;
}
这个函数会返回一个布尔值,如果数组中有重复元素则返回true,否则返回false。
for循环遍历数组的写法
for 循环遍历数组的写法一般有两种:
1. 普通的 for 循环
```c++
int arr[] = {1, 2, 3, 4, 5};
int len = 5; // 数组长度
for (int i = 0; i < len; i++) {
cout << arr[i] << endl;
}
```
2. C++11 新增的 for-each 循环(也称为 range-based for 循环)
```c++
int arr[] = {1, 2, 3, 4, 5};
for (int x : arr) {
cout << x << endl;
}
```
这种写法不需要知道数组长度,也不需要使用下标访问元素,代码更加简洁易读。