实战IT培训机构_黄色激情网站_IT培训班选大学生IT技术培训中心_黄色激情视频网站_中公优就业

400-650-7353
您所在的位置:首頁 > IT干貨資料 > web前端 > 【Web前端基礎知識】數組去重的方法

【Web前端基礎知識】數組去重的方法

  • 發布: 優就業it培訓
  • 來源:優就業
  • 2021-06-18 17:12:08
  • 閱讀()
  • 分享
  • 手機端入口

無論是在面試還是實際寫代碼中都會經常遇到數組去重,那接下來我們介紹幾種數組去重的方法。

  1. var arr = [3,6,4,1,8,8,8,8,8,4,0,9,2,7,8,5,3,4,8,9,3]; 

1、第一種是聲明一個空數組,通過indexOf( )查找的方法,判斷這個新數組中有沒有該元素,如果沒有即查找結果為 -1 時,將這個元素添加到新數組的末尾。

js代碼為:

  1. //1.創建一個空數組,把arr里面的元素往空對象中添加,判斷如果空數組沒有這個元素,加 
  2.        var array = []; 
  3.        for( var i = 0; i<arr.length; i++ ) { 
  4.            if( array.indexOf(arr[i]) == -1 ) { 
  5.                array.push( arr[i] ); 
  6.            } 
  7.        } 
  8.         console.log(array); 

2、第二種是操作數組自身:

從第一項開始,拿該項和后面的所有項作比較,如果后面有和比較項相等的,就把后面的一項刪除。刪除的方法會改變當前數組的長度,后面的元素會自動往前挪,所以補位上來的元素需要在進行一次比較,讓下標進行自減操作。

比較的詳細過程即是為:

拿數組中第一個元素,和后面所有的元素進行比較,如果一樣刪除后面哪一個

拿數組中第二個元素,和后面所有的元素進行比較,如果一樣刪除后面哪一個

...

數組中所有的元素后需要和后面的進行比較,所以需要進行for循環的嵌套

代碼為:

  1. for(var i = 0; i<arr.length; i++) { 
  2.             //和后面所有的元素進行比較 
  3.             for(var j = i+1; j<arr.length; j++) { 
  4.                 if( arr[i] == arr[j] ){ //重復,刪除后面的元素 
  5.                     arr.splice(j,1); 
  6.                     j--;  
  7. //刪除一個元素后元素位置會自動往前挪,下標也需要往前j-- 
  8.                 } 
  9.             } 
  10.         } 
  11.         console.log(arr); 

3、先使用sort()方法對數組進行排序,再比較看數組是否和相鄰的項相等,如果不同則存入新數組中

  1. // 先對數組進行sort排序 
  2.  var sortArr = arr.sort(); 
  3. // 初始化結果數組并存一個值 
  4.             var res = [sortArr[0]]; 
  5. // 循環遍歷數組進行比較 
  6.             for (var i = 1; i < sortArr.length; i++) { 
  7. // 如果當前的比較項與結果數組的最后一項不相等則放入 
  8.                 if (sortArr[i] !== res[res.length - 1]) { 
  9.                     res.push(sortArr[i]); 
  10.                 } 
  11.             } 
  12.             console.log(res); 

 

文章“【Web前端基礎知識】數組去重的方法”已幫助

更多內容

>>本文地址:http://www.jecan.cn/zhuanye/2021/69054.html

THE END  

聲明:本站稿件版權均屬中公教育優就業所有,未經許可不得擅自轉載。

1 您的年齡

2 您的學歷

3 您更想做哪個方向的工作?

獲取測試結果
  • 大前端大前端
  • 大數據大數據
  • 互聯網營銷互聯網營銷
  • JavaJava
  • Linux云計算Linux
  • Python+人工智能Python
  • 嵌入式物聯網嵌入式
  • 全域電商運營全域電商運營
  • 軟件測試軟件測試
  • 室內設計室內設計
  • 平面設計平面設計
  • 電商設計電商設計
  • 網頁設計網頁設計
  • 全鏈路UI/UE設計UI設計
  • VR/AR游戲開發VR/AR
  • 網絡安全網絡安全
  • 新媒體與短視頻運營新媒體
  • 直播帶貨直播帶貨
  • 智能機器人軟件開發智能機器人
 

快速通道fast track

近期開班時間TIME

主站蜘蛛池模板: 沥青灌缝机_路面灌缝机_道路灌缝机_沥青灌缝机厂家_济宁萨奥机械有限公司 | MOOG伺服阀维修,ATOS比例流量阀维修,伺服阀维修-上海纽顿液压设备有限公司 | 龙门加工中心-数控龙门加工中心厂家价格-山东海特数控机床有限公司_龙门加工中心-数控龙门加工中心厂家价格-山东海特数控机床有限公司 | 浙江华锤电器有限公司_地磅称重设备_防作弊地磅_浙江地磅售后维修_无人值守扫码过磅系统_浙江源头地磅厂家_浙江工厂直营地磅 | 精密模具制造,注塑加工,吹塑和吹瓶加工,EPS泡沫包装生产 - 济南兴田塑胶有限公司 | 洗石机-移动滚筒式,振动,螺旋,洗矿机-青州冠诚重工机械有限公司 | 钢格板|镀锌钢格板|热镀锌钢格板|格栅板|钢格板|钢格栅板|热浸锌钢格板|平台钢格板|镀锌钢格栅板|热镀锌钢格栅板|平台钢格栅板|不锈钢钢格栅板 - 专业钢格板厂家 | 直流电能表-充电桩电能表-导轨式电能表-智能电能表-浙江科为电气有限公司 | 考试试题_试卷及答案_诗词单词成语 - 优易学 | 挤出机_橡胶挤出机_塑料挤出机_胶片冷却机-河北伟源橡塑设备有限公司 | uv固化机-丝印uv机-工业烤箱-五金蚀刻机-分拣输送机 - 保定市丰辉机械设备制造有限公司 | 橡胶接头|可曲挠橡胶接头|橡胶软接头安装使用教程-上海松夏官方网站 | HYDAC过滤器,HYDAC滤芯,现货ATOS油泵,ATOS比例阀-东莞市广联自动化科技有限公司 | 美甲贴片-指甲贴片-穿戴美甲-假指甲厂家--薇丝黛拉 | 上海璟文空运首页_一级航空货运代理公司_机场快递当日达 | 深圳成考网-深圳成人高考报名网 深圳工程师职称评定条件及流程_深圳职称评审_职称评审-职称网 | 真空吸污车_高压清洗车厂家-程力专用汽车股份有限公司官网 | 锂电叉车,电动叉车_厂家-山东博峻智能科技有限公司 | 冷藏车-东风吸污车-纯电动环卫车-污水净化车-应急特勤保障车-程力专汽厂家-程力专用汽车股份有限公司销售二十一分公司 | 罗茨真空机组,立式无油往复真空泵,2BV水环真空泵-力侨真空科技 | 高铝矾土熟料_细粉_骨料_消失模_铸造用铝矾土_铝酸钙粉—嵩峰厂家 | 环保袋,无纺布袋,无纺布打孔袋,保温袋,环保袋定制,环保袋厂家,环雅包装-十七年环保袋定制厂家 | 钛板_钛管_钛棒_钛盘管-无锡市盛钛科技有限公司 | 微信聊天记录恢复_手机短信删除怎么恢复_通讯录恢复软件下载-快易数据恢复 | 国际学校_国际学校哪个好_国际课程学校-国际学校择校网 | 万博士范文网-您身边的范文参考网站Vanbs.com | 液氨泵,液化气泵-淄博「亚泰」燃气设备制造有限公司 | 国际高中-国际学校-一站式择校服务-远播国际教育 | 凝胶成像仪,化学发光凝胶成像系统,凝胶成像分析系统-上海培清科技有限公司 | 数显恒温油浴-电砂浴-高温油浴振荡器-常州迈科诺仪器有限公司 | 金联宇电缆|广东金联宇电缆厂家_广东金联宇电缆实业有限公司 | 东莞市海宝机械有限公司-不锈钢分选机-硅胶橡胶-生活垃圾-涡电流-静电-金属-矿石分选机 | WF2户外三防照明配电箱-BXD8050防爆防腐配电箱-浙江沃川防爆电气有限公司 | 无锡网站建设_小程序制作_网站设计公司_无锡网络公司_网站制作 | 活动策划,舞台搭建,活动策划公司-首选美湖上海活动策划公司 | 淘气堡_室内儿童乐园_户外无动力儿童游乐设备-高乐迪(北京) | 全自动翻转振荡器-浸出式水平振荡器厂家-土壤干燥箱价格-常州普天仪器 | 出国劳务公司_正规派遣公司[严海]| 刘秘书_你身边专业的工作范文写作小秘书 | 高通量组织研磨仪-多样品组织研磨仪-全自动组织研磨仪-研磨者科技(广州)有限公司 | 招商帮-一站式网络营销服务|搜索营销推广|信息流推广|短视视频营销推广|互联网整合营销|网络推广代运营|招商帮企业招商好帮手 |