jquery 判断数组里是否存在重复
答案:2 悬赏:50 手机版
解决时间 2021-03-05 07:32
- 提问者网友:沉默的哀伤
- 2021-03-05 04:12
jquery 判断数组里是否存在重复
最佳答案
- 五星知识达人网友:野味小生
- 2021-03-05 05:13
// 方法一,正则判断
var ary = new Array("111","222","33","112","222");
alert(mm(ary))
// 验证重复元素,有重复返回true;否则返回false
function mm(a)
{
return /(\x0f[^\x0f]+)\x0f[\s\S]*\1/.test("\x0f"+a.join("\x0f\x0f") +"\x0f");
}
// 方法二,通过数组排序,比较临近元素,可指出重复的元素
var ary = newArray("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]);
}
}
// 方法三,通过字符串查找
var ary = newArray("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]);
}
}
// 方法四,通过哈希
var ary = newArray("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;
}
var ary = new Array("111","222","33","112","222");
alert(mm(ary))
// 验证重复元素,有重复返回true;否则返回false
function mm(a)
{
return /(\x0f[^\x0f]+)\x0f[\s\S]*\1/.test("\x0f"+a.join("\x0f\x0f") +"\x0f");
}
// 方法二,通过数组排序,比较临近元素,可指出重复的元素
var ary = newArray("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]);
}
}
// 方法三,通过字符串查找
var ary = newArray("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]);
}
}
// 方法四,通过哈希
var ary = newArray("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;
}
全部回答
- 1楼网友:持酒劝斜阳
- 2021-03-05 05:41
function Each(list, fun){
for (var i = 0, len = list.length; i < len; i++) { fun(list[i], i); }
};
var arr = [1,2,3,4,1,3]
var t
Each(arr.sort(), function(o,i){
if(i>0 && o == t){ alert("相同的:" + o); }
alert(t)
t = o;
})
for (var i = 0, len = list.length; i < len; i++) { fun(list[i], i); }
};
var arr = [1,2,3,4,1,3]
var t
Each(arr.sort(), function(o,i){
if(i>0 && o == t){ alert("相同的:" + o); }
alert(t)
t = o;
})
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯