在前端開發(fā)中,經(jīng)常會涉及到數(shù)組操作。而有時(shí)我們需要檢測數(shù)組中的元素是否重復(fù),這時(shí)候就需要用到j(luò)Query了。
在jQuery中,我們可以使用$.inArray()方法來判斷數(shù)組中是否包含某個(gè)元素,其返回值為元素在數(shù)組中的索引值,如果不存在則返回-1。
//判斷數(shù)組中是否包含元素 var arr = [1, 2, 3, 4, 5]; if ($.inArray(3, arr) != -1) { console.log('數(shù)組中包含元素3'); } else { console.log('數(shù)組中不包含元素3'); }
當(dāng)我們需要判斷整個(gè)數(shù)組中是否有重復(fù)元素時(shí),可以遍歷數(shù)組,通過循環(huán)的方式判斷每個(gè)元素是否在數(shù)組中出現(xiàn)過,如果出現(xiàn)過則說明有重復(fù)元素。
//判斷數(shù)組中是否有重復(fù)元素 var arr = [1, 2, 3, 4, 5, 3]; var repeat = false; for (var i = 0; i< arr.length; i++) { if ($.inArray(arr[i], arr.slice(i + 1)) != -1) { repeat = true; break; } } if (repeat) { console.log('數(shù)組中存在重復(fù)元素'); } else { console.log('數(shù)組中不存在重復(fù)元素'); }
上述代碼中,我們使用了數(shù)組的slice方法來截取掉已經(jīng)判斷過的元素部分,從而避免重復(fù)判斷。
通過jQuery的$.inArray()方法和循環(huán)判斷,我們可以輕松地檢測數(shù)組中是否有重復(fù)元素。