版權聲明:本文爲博主原創文章,未經博主容許不得轉載。 https://blog.csdn.net/longzhoufeng/article/details/78840974
第一種方法:可是下面的這種方法數字字符串相似相同,返回的仍是真,有點不靠譜,若是是其它的字符是能夠的
var ary11 =
new Array(
"1",
"ff",
"11",
"aa",
"2222");
function mm(a) {
return /(\x0f[^\x0f]+)\x0f[\s\S]*\1/.test(
"\x0f" + a.join(
"\x0f\x0f") +
"\x0f");
}
mm(ary11)
alert(mm(ary11))
第二種方法:可是下面的這種方法數字字符串相似相同,返回的也仍是真,有點不靠譜,若是是其它的字符是能夠的
var ary = [
"1",
"ff",
"11",
"aa",
"2222"]
var s = ary.
join(
",") +
",";
for(
var i =
0; i < ary.length; i++) {
if(s.replace(ary[i] +
",",
"").indexOf(ary[i] +
",") > -
1) {
alert(
"數組中有重複元素:" + ary[i]);
break;
}
}
第三種方法:這種方法好像不會有什麼問題
var ary =
new Array(
"11",
"222",
"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]);
}
}
第四種方法:這種方法應該不會有什麼問題,這個使用了map相似的功能,沒毛病,我用的就是這個
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
var ary =
new Array(
"1111",
"222",
"33",
"111",
"22");
alert(isRepeat(ary));
function isRepeat(arr) {
var hash = {};
for(
var i
in arr) {
if(hash[arr[i]]) {
return true;
}
hash[arr[i]] =
true;
}
return false;
}