亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

根據相同的 id 合并數組內的數組對象

根據相同的 id 合并數組內的數組對象

一只萌萌小番薯 2023-08-18 14:14:05
您好,我有一個帶有對象和數組對象值的 2 個變量,在“test”和“test_2”中,我想根據 id 合并 sku(“test”)和功能(“test_2”)(如下所示) .我正在考慮什么是最好的合并方法,對于 test_2 我將功能轉換為值數組對象 ex: feature:[{id:xxx}] 首先,然后我進行合并,因為我嘗試它不會不工作。希望這里的任何人都可以幫助我。謝謝const test =     {        sku: [            {id:"282828282", link:"ksksks.com"},            {id:"676867868", link:"lallaa.com"},            {id:"543454554", link:"sssss.com"},            {id:"345473663", link:"fdfsas.com"}        ],          }const test_2 = {        panels: [            {id:"9328492847", feature: ['282828282']},            {id:"6756734535", feature: ['543454554', '282828282']},            {id:"6545353453", feature: []},            {id:"4353567688", feature: []},        ]}const test_3 = {        panels: [            {id:"9328492847", feature: [{id: '282828282', link:"ksksks.com"} ]},            {id:"6756734535", feature: [{id: '543454554', link:"sssss.com"}, {id:'282828282',link:"ksksks.com"}]},            {id:"6545353453", feature: []},            {id:"4353567688", feature: []},        ]}
查看完整描述

2 回答

?
智慧大石

TA貢獻1946條經驗 獲得超3個贊

let skuSet = {};


for (let i = 0; i < test.sku.length; i++) {

    if (!skuSet[test.sku[i].id]) {

        skuSet[test.sku[i].id] = test.sku[i];

    }

}


for (let i = 0; i < test_2.panels.length; i++) {

    let current = test_2.panels[i];

    for (let j = 0; j < current.feature.length; j++) {

        if (skuSet[current.feature[j]]){

            current.feature[j] = skuSet[current.feature[j]];

        }

    }

}


console.log(JSON.stringify(test_2));

如果您對上述邏輯有任何疑問,請告訴我。


查看完整回答
反對 回復 2023-08-18
?
德瑪西亞99

TA貢獻1770條經驗 獲得超3個贊

let skuMap = {};

test.sku.map((skuData) => { skuMap[skuData.id] = skuData })
test_2.panels.map((panelData) => {
  panelData.feature = panelData.feature.map((panelFeatureId) => skuMap[panelFeatureId])
})


查看完整回答
反對 回復 2023-08-18
  • 2 回答
  • 0 關注
  • 255 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號