关于JS中数组去重的几种方法
方法一:采用indexof 方式进行去重
let arr=[1,2,4,7,18,7,2] let arr1=[] //定义一个空数组 for(let i=0;i<arr.length;i++){ if(arr1.indexOf(arr[i])===-1){ //在新数组中查询相应的数字,如果不存在,就将数字存入新数组 arr1.push(arr[i]) } } console.log(arr1)
方法二:利用数组的删除元素来进行
let ar=[1,2,4,7,18,7,2] let ar1=ar.sort(function (a,b){ return a-b }) //先将数组进行排序 for(let i=0;i<ar1.length;i++){ if(ar1[i]===ar1[i+1]){ //判断相邻是否相等 ,如果相等 ar1.splice(i,1) //删除相同的数字,原数组发生变化 } } console.log(ar1)
方法三:利用slice截取方法进行去重
let ar=[1,2,4,7,18,7,2] let ar1=ar.sort(function (a,b){ return a-b }) //排序 let ar2=[] //创建一个空数组,将截取的元素存放 for(let i=0;i<ar1.length;i++){ if(ar1[i]!=ar1[i+1]){ //判断相邻是否相等 ,如果不等 let a=ar1.slice(i,i+1) //截取本身成立一个新数组 ar2.push(a[0]) //将自身数组的一个值添加 到空数组中 } } console.log(ar2)
下一篇:
【框架篇】Gin框架源码解读【更新中】