国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > JS > 正文

JS學(xué)習(xí)筆記之?dāng)?shù)組去重實現(xiàn)方法小結(jié)

2024-05-06 16:51:34
字體:
供稿:網(wǎng)友

本文實例講述了JS學(xué)習(xí)筆記之?dāng)?shù)組去重實現(xiàn)方法。分享給大家供大家參考,具體如下:

操作的數(shù)組

 let arr=[0,1,23,'1',4,2,8,5,5,6,9,'asdasd','5']

1、
利用ES6 的set 來進(jìn)行數(shù)組去重

JS,數(shù)組去重

 console.time("set")  let type1=new Set(arr)  console.log(type1)  type1=[...type1]  console.log(type1)  console.timeEnd("set")

 

2、
  利用indexof和forEach 多次遍歷來搜索是否有相同的值

JS,數(shù)組去重

console.time("indexOf")  let type2=[]  arr.forEach(function(item,index){    if(type2.indexOf(item)<0){      type2.push(item)    }  })  console.log(type2)  console.timeEnd("indexOf")

3、
雙循環(huán)實現(xiàn)數(shù)組去重

splice() 方法向/從數(shù)組中添加/刪除項目,然后返回被刪除的項目。

缺點  會對元素組造成影響,所以建議先拷貝數(shù)組

JS,數(shù)組去重

console.time("splice")let arr2=[0,1,23,'1',4,2,8,5,5,6,9,'asdasd','5']  for(let i=0;i<arr2.length;i++){    for(let j=i+1;j<arr2.length;j++){      if(arr2[i]===arr2[j]){        arr2.splice(i,1)      }    }  }  console.log(arr2)console.timeEnd("splice")

4、

利用 對象屬性  不重復(fù)的特性  以及 typeof  來實現(xiàn)數(shù)組去重

JS,數(shù)組去重

 

console.time("obj屬性")let obj1={}let type4=[]arr.forEach(function(item,index){  let tf=typeof item  if(!obj1[tf+"_"+item]){    obj1[tf+"_"+item]=true  }})console.log(obj1)for(item in obj1){  type4.push(item.split("_")[0].toLowerCase()=="number"?+item.split("_")[1]:item.split("_")[1])}obj1=null;console.log(type4)console.timeEnd("obj屬性")

5、

利用sort排序 相同值就會被排列到一起

會對元素組產(chǎn)生操作
JS,數(shù)組去重

console.time("sort排序")let arr3=[0,1,23,'1',4,2,8,5,5,6,9,'asdasd','5']arr3.sort()for(let i=0;i<arr3.length;i++){  if(arr3[i]===arr3[i+1]){    arr3.splice(i,1)  }}console.log(arr3)console.timeEnd("sort排序")

效果展示

JS,數(shù)組去重

希望本文所述對大家JavaScript程序設(shè)計有所幫助。


注:相關(guān)教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 安西县| 木兰县| 青冈县| 南乐县| 汶川县| 琼海市| 桦甸市| 泾阳县| 枣阳市| 雷山县| 岑巩县| 离岛区| 恩平市| 射洪县| 大埔县| 赣榆县| 安徽省| 保德县| 拜城县| 什邡市| 开封县| 沧州市| 永平县| 固安县| 白玉县| 社会| 宜丰县| 榆林市| 绥中县| 利川市| 山阴县| 尉氏县| 兰西县| 通道| 安康市| 珠海市| 湾仔区| 津南区| 岳西县| 交口县| 鹿邑县|