91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JS中如何實現數組去重

發布時間:2021-07-07 11:36:18 來源:億速云 閱讀:143 作者:小新 欄目:web開發

這篇文章主要介紹JS中如何實現數組去重,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

操作的數組

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

1、
利用ES6 的set 來進行數組去重

JS中如何實現數組去重

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

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

JS中如何實現數組去重

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、
雙循環實現數組去重

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

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

JS中如何實現數組去重

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、

利用 對象屬性  不重復的特性  以及 typeof  來實現數組去重

JS中如何實現數組去重

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排序 相同值就會被排列到一起

會對元素組產生操作
JS中如何實現數組去重

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中如何實現數組去重

以上是“JS中如何實現數組去重”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

横峰县| 于田县| 崇州市| 濮阳县| 长子县| 赤城县| 宜良县| 许昌县| 将乐县| 门头沟区| 巴林左旗| 张家口市| 石河子市| 武安市| 额敏县| 平顶山市| 阜平县| 邓州市| 高清| 新民市| 临湘市| 高陵县| 中阳县| 东源县| 锦屏县| 天水市| 彭泽县| 辉县市| 睢宁县| 历史| 当雄县| 全州县| 新蔡县| 菏泽市| 嵊泗县| 唐海县| 平果县| 清水河县| 苗栗县| 肇庆市| 沁水县|