第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將多個對象合并為一個對象并組合屬性 JavaScript

將多個對象合并為一個對象并組合屬性 JavaScript

暮色呼如 2022-07-21 22:16:29
我在一個數(shù)組中有多個對象,我想合并所有具有相同 id 的對象,但我也想合并一個屬性中的所有值(在這種情況下,通道)這是代碼:defaultArray = [  {    id: "FirstId",    name: "Some random name"    channels: [{      id: "Channel-ASD",      name: "Channel ASD"    }]  },  {    id: "FirstId",    name: "Some random name"    channels: [{      id: "Channel-QWE",      name: "Channel QWE"    }]  },  {    id: "SecondId",    name: "Some random name"    channels: [{      id: "Channel-QAZ",      name: "Channel QAZ"    }]  }];預(yù)期輸出:newArray = [  {    id: "FirstId",    name: "Some random name"    channels: [      {        id: "Channel-ASD",        name: "Channel ASD"      },      {        id: "Channel-QWE",        name: "Channel QWE"      }    ]  },  {    id: "SecondId",    name: "Some random name"    channels: [{      id: "Channel-QAZ",      name: "Channel QAZ"    }]  }]
查看完整描述

1 回答

?
慕萊塢森

TA貢獻1810條經(jīng)驗 獲得超4個贊

你需要學(xué)習(xí)filter, map, reduce, some, ...


let defaultArray = [

  {

    id: "FirstId",

    name: "Some random name",

    channels: [{

      id: "Channel-ASD",

      name: "Channel ASD"

    }]

  },

  {

    id: "FirstId",

    name: "Some random name",

    channels: [{

      id: "Channel-QWE",

      name: "Channel QWE"

    }]

  },

  {

    id: "SecondId",

    name: "Some random name",

    channels: [{

      id: "Channel-QAZ",

      name: "Channel QAZ"

    }]

  }

];


let transformed= defaultArray.reduce((result, item, index, original)=>{

  if (result.some(i=>i.id===item.id)) return result;

  let channels = original.reduce((r,i)=>{

    i.id===item.id && (r=[...r, ...i.channels]);

    return r;

  },[]);


  result.push({

    ...item,

    channels

  });

  return result;

},[]);


console.log(JSON.stringify(transformed,null,2));


查看完整回答
反對 回復(fù) 2022-07-21
  • 1 回答
  • 0 關(guān)注
  • 174 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號