數組對象去重方法總結


var arrInfo=[{roleId:"239','roleName':'基本信息'},{roleId:"216','roleName':'測試數據展示'},{roleId:"239','roleName':'基本信息'}]

1. let obj = {}

arrInfo = arrInfo.reduce (function(item,next){

obj[next.roleId] ? ' ' : obj[next.roleId]  = true && item.push(next)

return item;

},[])

console.log(arrInfo)   //輸出內容展示     [{roleId:'239','roleName':''基本信息'},{roleId:'216','roleName':'測試數據展示'}]

2. var arr = [ ] ;    //想法判斷對象中是否存在某個key

    var obj = { };

     arrInfo = arrInfo.forEach(function(ele,index){  //ele 是數組中的每一個對象     index是指下標

      if(!obj[arrInfo[index] .roleId){

         arr.push(arrInfo[index])

         obj[arrInfo[index].roleId]  = true

      } 

    })

 3.e6數組去重方法 

const arr = ['張三','張三','三張三'] let set = new Set(arr); // set 自帶去重 // Set { '張三', '三張三' } console.log(set); console.error(Array.from(set)); // [ '張三', '三張三' ]

4.多維數組將為一維數組的方法展示 let arr = [[1,2,3],[1,2],[1,4]]
      flatten(arr) { //崗位全選到多位數組導致的處理數組方法傳值給后台
       return [].concat( ...arr.map(x => Array.isArray(x) ? this.flatten(x) : x) )
      },
     //用法  
      Array.from(new Set(_this.flatten(arr)))    //輸出數組展示   
     console.log(Array.from(new Set(_this.flatten(arr))))    



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM