|
比如有這么一組數組,里面放了20個18位的身份證號碼
要判斷里面的身份證號碼是否有重復
如何快速判斷?
復制代碼 代碼如下:
var ary = new Array("111","22","33","111");
var s = ary.join(",")+",";
for(var i=0;i<ary.length;i++)
{
if(s.replace(ary[i]+",","").indexOf(ary[i]+",")>-1)
{
alert("有重復!");
}
}
復制代碼 代碼如下:
var ary = new Array("111","22","33","111");
var nary=ary.sort();
for(var i=0;i<nary.length-1;i++)
{if (nary[i]==nary[i+1])
{alert("重復內容:"+nary[i]);}
}
活用正則表達式里的 /1 (第一個匹配結果)
先用 join() 把數組轉換成字符串且夾塞指定的分隔符 /x0f(這種分隔符用戶一般是輸不進來的),這一步純粹是為簡化且精確腳本而做。
這種模式是我寫 MzTreeView 的時候想出來的招數,可以跳過 for 循環達到極端的效率。
復制代碼 代碼如下:
var hash = {};
for(var i in arr) {
if(hash[arr[i]])
return true;
hash[arr[i]] = true;
}
return false;
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
JavaScript技術:javascript如何判斷數組內元素是否重復的方法集錦,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。