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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

根據(jù)主鍵和外鍵組合兩個(gè)數(shù)組

根據(jù)主鍵和外鍵組合兩個(gè)數(shù)組

慕容森 2023-09-21 17:33:10
我有兩個(gè)這樣的數(shù)組:let event = [              {id: "123", ename: "abc"}              {id: "125", ename: "def"}            ]let speaker = [               {id: "11", sname: "s1", event_id: "123"}, //FK from event table               {id: "13", sname: "s2", event_id: "123"},                {id: "15", name: "s4", event_id: "125"}            ]我想要這樣的輸出:let event_speaker = [                       {                         id: "123",                          ename: "abc",                          speaker: [                             {id: "11", sname: "s1", event_id: "123"},                             {id: "13", sname: "s2", event_id: "123"},                          ]                       },                       {                         id: "125",                          ename: "def",                          speaker: [                             {id: "15", sname: "s4", event_id: "125"}                          ]                       }                   ]我嘗試了不同的答案,這些答案可以將兩個(gè)數(shù)組合并為一個(gè),但當(dāng)我們有多個(gè)匹配對(duì)并且我需要用我自己的密鑰(揚(yáng)聲器)將其放入一個(gè)新數(shù)組時(shí),則不行。我已經(jīng)嘗試過(guò)這個(gè):let arr3 = arr1.map((item, i) => Object.assign({}, item, arr2[i]));但它只適用于一個(gè)揚(yáng)聲器,因?yàn)樗鼘⑺袚P(yáng)聲器鍵放入最終數(shù)組中,如下所示let final_array = [     id: "123",     ename: "abc,    sname: "s1",    event_id: "123"]
查看完整描述

2 回答

?
嚕嚕噠

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超7個(gè)贊

您可以使用map和filter方法來(lái)做到這一點(diǎn)。您只需要speaker使用 中當(dāng)前元素的 id 過(guò)濾數(shù)組event。


let event = [{"id":"123","ename":"abc"},{"id":"125","ename":"def"}]

let speaker = [{"id":"11","sname":"s1","event_id":"123"},{"id":"13","sname":"s2","event_id":"123"},{"id":"15","name":"s4","event_id":"125"}]


const event_speaker = event.map(({ id, ...rest }) => ({

  id, ...rest, speaker: speaker.filter(({ event_id }) => event_id === id)

}))


console.log(event_speaker)


查看完整回答
反對(duì) 回復(fù) 2023-09-21
?
慕田峪9158850

TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超8個(gè)贊

您也可以使用對(duì)象破壞:


let event = [

              {id: "123", ename: "abc"},

              {id: "125", ename: "def"}

            ]

let speaker = [

               {id: "11", sname: "s1", event_id: "123"}, //FK from event table

               {id: "13", sname: "s2", event_id: "123"}, 

               {id: "15", name: "s4", event_id: "125"}

               ]

let result = event.map(e => ({...e,speaker: speaker.filter(({event_id}) => event_id === e.id)}))


console.log(result)


查看完整回答
反對(duì) 回復(fù) 2023-09-21
  • 2 回答
  • 0 關(guān)注
  • 161 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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