最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2019年05月29日 10:49:53   作者:倪曉磊  
這篇文章主要介紹了JS學(xué)習(xí)筆記之?dāng)?shù)組去重實現(xiàn)方法,結(jié)合實例形式總結(jié)分析了javascript數(shù)組去重的5種常見實現(xiàn)方法及相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了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ù)組去重


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


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


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ù)組中添加/刪除項目,然后返回被刪除的項目。

缺點(diǎn)  會對元素組造成影響,所以建議先拷貝數(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ù)組去重



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)生操作

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排序")

效果展示


感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運(yùn)行工具http://tools.jb51.net/code/HtmlJsRun測試上述代碼運(yùn)行效果。

PS:這里再為大家提供幾款相關(guān)工具供大家參考使用:

在線去除重復(fù)項工具:
http://tools.jb51.net/code/quchong

在線文本去重復(fù)工具:
http://tools.jb51.net/aideddesign/txt_quchong

更多關(guān)于JavaScript相關(guān)內(nèi)容還可查看本站專題:《JavaScript數(shù)組操作技巧總結(jié)》、《JavaScript字符與字符串操作技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》及《JavaScript錯誤與調(diào)試技巧總結(jié)

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

相關(guān)文章

  • JavaScript實現(xiàn)簡單版的留言發(fā)布與刪除

    JavaScript實現(xiàn)簡單版的留言發(fā)布與刪除

    這篇文章主要介紹了如何通過JavaScript實現(xiàn)簡單的留言板功能:留言的發(fā)布與刪除。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以學(xué)習(xí)一下
    2022-03-03
  • ng-options和ng-checked在表單中的高級運(yùn)用(推薦)

    ng-options和ng-checked在表單中的高級運(yùn)用(推薦)

    AngularJS是當(dāng)前非常的流行的前端框架,它的語法糖非常多,也極大的方便了前端開發(fā)者。這篇文章主要介紹了ng-options和ng-checked在表單中的高級運(yùn)用,需要的朋友可以參考下
    2017-01-01
  • javascript實現(xiàn)炫酷的拖動分頁

    javascript實現(xiàn)炫酷的拖動分頁

    非??岬膉avascript拖動分頁功能,無縫循環(huán)分頁,拖動鼠標(biāo)即可完成分頁,鼠標(biāo)向左拖動回到前一頁,向右拖動則翻開第二頁,還帶有動畫特效,著實很不錯,界面黑色,非主流風(fēng)格,相信很多人會喜歡的。
    2015-05-05
  • JS無縫滾動效果實現(xiàn)方法分析

    JS無縫滾動效果實現(xiàn)方法分析

    這篇文章主要介紹了JS無縫滾動效果實現(xiàn)方法,結(jié)合實例形式較為詳細(xì)的分析了無縫滾動的原理、實現(xiàn)技巧與相關(guān)注意事項,需要的朋友可以參考下
    2016-12-12
  • 通過實例理解javascript中沒有函數(shù)重載的概念

    通過實例理解javascript中沒有函數(shù)重載的概念

    這篇文章主要介紹了通過實例理解javascript中沒有函數(shù)重載的概念,十分的簡單易懂,需要的朋友可以參考下
    2015-06-06
  • JS完成畫圓圈的小球

    JS完成畫圓圈的小球

    本文主要介紹了JS完成畫圓圈的小球的實例,具有很好的參考價值。下面跟著小編一起來看下吧
    2017-03-03
  • js實現(xiàn)九宮格拼圖小游戲

    js實現(xiàn)九宮格拼圖小游戲

    本文主要分享了js實現(xiàn)九宮格拼圖小游戲的示例代碼。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • 解決jquery插件沖突的問題

    解決jquery插件沖突的問題

    本篇文章主要是對解決jquery插件沖突的方法進(jìn)行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-01-01
  • JS獲取當(dāng)前時間戳方法解析

    JS獲取當(dāng)前時間戳方法解析

    這篇文章主要介紹了JS獲取當(dāng)前時間戳方法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08
  • 深入分析javascript中的錯誤處理機(jī)制

    深入分析javascript中的錯誤處理機(jī)制

    這篇文章主要介紹了深入分析javascript中的錯誤處理機(jī)制的相關(guān)資料,需要的朋友可以參考下
    2016-07-07

最新評論

常州市| 普陀区| 上思县| 丰镇市| 永城市| 来凤县| 石门县| 江西省| 双鸭山市| 全南县| 荆州市| 星子县| 林州市| 绥中县| 扶风县| 丹寨县| 舟山市| 芷江| 新化县| 通辽市| 栾城县| 天等县| 新营市| 诏安县| 莫力| 文登市| 离岛区| 海安县| 封开县| 错那县| 定远县| 洱源县| 昌平区| 兖州市| 墨竹工卡县| 嘉善县| 云阳县| 道孚县| 楚雄市| 康保县| 新绛县|