JS判斷數(shù)組里是否有重復(fù)元素的方法小結(jié)
本文實(shí)例講述了JS判斷數(shù)組里是否有重復(fù)元素的方法。分享給大家供大家參考,具體如下:
第一種方法:但是下面的這種方法數(shù)字字符串類似相同,返回的還是真,有點(diǎn)不靠譜,如果是其它的字符是可以的
var ary11 = new Array("1", "ff", "11", "aa", "2222");
// 驗(yàn)證重復(fù)元素,有重復(fù)返回true;否則返回false
function mm(a) {
return /(\x0f[^\x0f]+)\x0f[\s\S]*\1/.test("\x0f" + a.join("\x0f\x0f") + "\x0f");
}
mm(ary11)
alert(mm(ary11))
第二種方法:但是下面的這種方法數(shù)字字符串類似相同,返回的也還是真,有點(diǎn)不靠譜,如果是其它的字符是可以的
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("數(shù)組中有重復(fù)元素:" + ary[i]);
break;
}
}
第三種方法:這種方法好像不會(huì)有什么問(wèn)題
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("重復(fù)內(nèi)容:" + nary[i]);
}
}
第四種方法:這種方法好像不會(huì)有什么問(wèn)題
var ary = new Array("1111", "222", "33", "111", "22");
alert(isRepeat(ary));
// 驗(yàn)證重復(fù)元素,有重復(fù)返回true;否則返回false
function isRepeat(arr) {
var hash = {};
for(var i in arr) {
if(hash[arr[i]]) {
return true;
}
// 不存在該元素,則賦值為true,可以賦任意值,相應(yīng)的修改if判斷條件即可
hash[arr[i]] = true;
}
return false;
}
PS:這里再為大家提供幾款相關(guān)工具供大家參考使用:
在線去除重復(fù)項(xiàng)工具:
http://tools.jb51.net/code/quchong
在線文本去重復(fù)工具:
http://tools.jb51.net/aideddesign/txt_quchong
字?jǐn)?shù)統(tǒng)計(jì)工具:
http://tools.jb51.net/code/zishutongji
在線字符統(tǒng)計(jì)與編輯工具:
http://tools.jb51.net/code/char_tongji
更多關(guān)于JavaScript相關(guān)內(nèi)容還可查看本站專題:《JavaScript數(shù)組操作技巧總結(jié)》、《JavaScript字符與字符串操作技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》及《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- JavaScript判斷數(shù)組是否包含指定元素的方法
- JS判斷元素是否在數(shù)組內(nèi)的實(shí)現(xiàn)代碼
- JS判斷數(shù)組是否包含某元素實(shí)現(xiàn)方法匯總
- JS實(shí)現(xiàn)判斷數(shù)組是否包含某個(gè)元素示例
- 判斷數(shù)組是否包含某個(gè)元素的js函數(shù)實(shí)現(xiàn)方法
- javascript 判斷數(shù)組是否已包含了某個(gè)元素的函數(shù)
- javascript如何判斷數(shù)組內(nèi)元素是否重復(fù)的方法集錦
- 利用JS十分鐘判斷數(shù)組中存在元素的多種方式
- 利用JS判斷元素是否為數(shù)組的方法示例
- JS判斷元素是否存在數(shù)組中的5種方式總結(jié)
相關(guān)文章
namespace.js Javascript的命名空間庫(kù)
命名空間的好處已經(jīng)耳熟能詳,但是JS中并沒(méi)有原生態(tài)支持命名空間,這個(gè)庫(kù)就是為js提供命名空間的功能。2011-10-10
關(guān)于var在for循環(huán)遇到的問(wèn)題解決
這篇文章主要給大家介紹了關(guān)于var在for循環(huán)遇到的問(wèn)題的幾種解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-07-07
javascript 最常用的10個(gè)自定義函數(shù)[推薦]
如果不使用類庫(kù)或者沒(méi)有自己的類庫(kù),儲(chǔ)備一些常用函數(shù)總是有好處的。2009-12-12
js判斷鼠標(biāo)同時(shí)離開(kāi)兩個(gè)div的思路及代碼
js判斷鼠標(biāo)同時(shí)離開(kāi)兩個(gè)div想了好長(zhǎng)時(shí)間終于出爐了,下面與大家分享下具體的實(shí)現(xiàn)代碼,感興趣的朋友可以參考下啊2013-05-05
JS+CSS實(shí)現(xiàn)的日本門(mén)戶網(wǎng)站經(jīng)典選項(xiàng)卡導(dǎo)航效果
這篇文章主要介紹了JS+CSS實(shí)現(xiàn)的日本門(mén)戶網(wǎng)站經(jīng)典選項(xiàng)卡導(dǎo)航效果,涉及JavaScript針對(duì)頁(yè)面元素的動(dòng)態(tài)遍歷及樣式動(dòng)態(tài)修改技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09
ajax如何實(shí)現(xiàn)頁(yè)面局部跳轉(zhuǎn)與結(jié)果返回
AJAX即“Asynchronous Javascript And XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁(yè)應(yīng)用的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù),通過(guò)在后臺(tái)與服務(wù)器進(jìn)行少量數(shù)據(jù)交換,AJAX 可以使網(wǎng)頁(yè)實(shí)現(xiàn)異步更新,本篇文章給大家介紹ajax如何實(shí)現(xiàn)頁(yè)面局部跳轉(zhuǎn)與結(jié)果返回,感興趣的朋友一起來(lái)學(xué)習(xí)2015-08-08
微信小程序官方動(dòng)態(tài)自定義底部tabBar的例子
這篇文章主要介紹了微信小程序官方動(dòng)態(tài)自定義底部tabBar的例子,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09

