记录一下自己工作中的一些方法,好记性不如烂笔头,之后工作用到可以随时翻出来,自己动手实现一遍,更能加深印象!
方法1.
function isUniqueArr(arrs) {let arrToStr = arrs.join(",") + ",";let arrLen = arrs.length;for(let i = 0; i < arrlen; i++) {//ps:替换为空,还能发现元素,证明有重复元素if(arrToStr.replace(arrs[i] + ",", "").indexOf(arrs[i] + ",") > -1) {console.log("数组中有重复元素:" + arrs[i]);return false; }}return true;}复制代码
方法2.
let arrs = new Array("111", "22", "33", "111");//ps:适合数值,字符串数值类型function isUniqueArrSecond(arrs) {let sortArrs = arrs.slice().sort();let arrLen = sortArrs.length;for(let i = 0; i < arrLen; i++) {if(sortArrs[i] === sortArrs[i+1]) {console.log("数组中有重复元素:" + arrs[i]);return false; }}return true}复制代码
方法3.
function isUniqueArrThird(arrs) {let hash = {};let arrLen = arrs.length;for(let i in arrs) {if(hash[arrs[i]]) {return false;}hash[arrs[i]] = true;}return true;}复制代码