兩個數組對象合並


    let array = [{label:9000,items:[{a:'相同'}]},{label:2000,items:[{a:'相同'}]}, {label:8000,items:[{a:''}]}];
    let temp = [{label:9000,items:[{b:'相同2'}]}, {label:5000,items:[{b:''}]}];
處理為下面的這種
[{label:9000,items:[{a:'相同'},{b:'相同2'}]},{label:2000,items:[{a:'相同'}]}, {label:8000,items:[{a:''}]}, {label:5000,items:[{b:''}]}];

array.forEach(item=>{
    //case1:如果array里的label:9000在temp里也有label:9000,就把這個label所在對象的items里的對象給temp里的label:9000所對應的items
    //case2:如果temp里沒有label=8000這一項 就把這一項的對象push給temp
    let has;
    temp.forEach(item1=>{
      if(item.label==item1.label){
        has=true;
        item1.items=item.items.concat(item1.items);
      }
    })
    if(!has){
      temp.push(item)
    }
  })
  console.log(temp)


免責聲明!

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



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