//数组去重 //1.判断新数组中是否有重复的 let oldArr = [1, 2, 3, 4, 5, 5 , 6, 7, 8, 2, 3]; let newArr = qc(oldArr); console.log(newArr) function qc(arr){ let nosame=[]; for(let i=0;i<arr.length;i++){ //如果在数组中没找到指定元素则返回 -1。 if(nosame.indexOf(arr[i])==-1){ nosame.push(arr[i]) } } return nosame; } //2.判断原数组中的下标是否一致 let old2=[1,2,1] let new2=qc2(old2,"old2"); console.log(new2) function qc2(arr2){ let nosame2=[]; for(let i=0;i<arr2.length;i++){ //返回 item 的第一次出现的位置 if(arr2.indexOf(arr2[i])==i){ nosame2.push(arr2[i]) } } return nosame2; } //3.es6的Set去重(), let old3=[2,3,4,2,3]; let b=new Set(old3); //处理完后可以用Array.from方法或者扩展函数把它重新转回数组 let c=Array.from(b); let d=[...b] console.log(c,"c",d)