
正文
js判断数组值重复数据结构,js判断数组是否有重复值
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
JS判断一个数组中是否有重复值的三种方法
我只知道一种,就是通过循环来,然后用一个键值数组来来存储值的出现次数,如上面那个数组的变量名为var jsArr,那么可以下面的方法来记录。
var tmp = new Array();
for(var i = 0, j = jsArr.length; i j; i++) {
var v = jsArr[i];
tmp[v] = (typeof(tmp[v]) != 'undefined') ? tmp[v] +1 : 1;
}
这样就可以知道每个值出现的次数了
相关问答
Q1: 使用js,判断数组中是否有重复数据
//数组去重
var arr = [1,3,5,6,1,4,2,6,7];
var newArr = [];
for(var i in arr) {
if(newArr.indexOf(arr[i]) == -1) {
newArr.push(arr[i])
}
}
console.log(newArr)
判断是否有重复数据的话,只要判断arr和newArr是否相等就可以
//还有es6写法
var arr = [1,3,5,6,1,4,2,6,7];
var newArr = Array.from(new Set(arr));
console.log(newArr)
Q2: js怎么判断一个list里有重复map
js判断一个list里有重复map方法如下:
1、先利用ES6语法将数组去重,之后再与原数组比较长度,若长度小于原数组,则说明数组有重复值。
2、先将数组转换成字符串,再遍历数组,在字符串中移除当前的数组元素之后还能找到该元素,则说明数组有重复值。
3、对数组进行排序,对比上一个元素和下一个元素是否相等,若相等,则说明数组有重复值。
Q3: js判断数组里是否含有相同的元素
可以使用数组的indexOf()方法,如果返回值为-1则说明不存在,如果返回值为大于-1的整数,则说明存在。例如:
var arr = [1,2,3];
arr.indexOf(1); // 返回0
arr.indexOf(5); // 返回-1
附:返回值为数组中的最靠前元素在数组的位置
Q4: jquery 判断数组中是否有重复值
1、通过正则判断。
var ary = new Array("111","ff","222","aa","222");
alert(mm(ary));
// 验证重复元素,有重复返回true;否则返回false
function mm(a){return /(\x0f[^\x0f]+)\x0f[\s\S]*\1/.test("\x0f"+a.join("\x0f\x0f") +"\x0f");}
2、通过数组排序,比较临近元素,可指出重复的元素。
var ary = new Array("111","22","33","111","22");
var nary = ary.sort();
for(var i = 0; i nary.length - 1; i++){
if (nary[i] == nary[i+1]){alert("重复内容:" + nary[i]);}
}
3、通过字符串查找。
var ary = new Array("111","22","33","111","22");
var s = ary.join(",") +",";
for(var i = 0; i ary.length; i++){
if(s.replace(ary[i] + ",", "").indexOf(ary[i] +",") -1){alert("重复内容:" + ary[i]);}
}
4、通过哈希
var ary = new Array("111","22","33","111","22");
alert(isRepeat(ary));// 验证重复元素,有重复返回true;否则返回false
function isRepeat(arr) {
var hash = {};
for(var i in arr) {
if(hash[arr[i]]){return true;}
// 不存在该元素,则赋值为true,可以赋任意值,相应的修改if判断条件即可
hash[arr[i]] = true;}
return false;
}
Q5: JS怎么查找数组重复值?
var arr = ["a","2","a","b"]
var obj = {}
for(var i=0;iarr.length;i++)
{
var item = arr[i];
if(obj[item]==null)obj[item] = 1;
else obj[item] = obj[item]+1;
}
for(a in obj)
{
var item = obj[a];
if(item1)alert("重复元素"+a)
}
js判断数组值重复数据结构的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于js判断数组是否有重复值、js判断数组值重复数据结构的信息别忘了在本站进行查找喔。

![【电子书】[网络小说] 《七界传说》[心梦无痕 ] 【电子书】[网络小说] 《七界传说》[心梦无痕 ]](https://www.04ip.com/template/qe/style/noimg/16.jpg)






