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

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

如何在javascript中過濾對象數(shù)組?

如何在javascript中過濾對象數(shù)組?

這是我的輸入:const data = [  { group: [{ label: "Can View" }, { label: "Can Create" }] },  { topgroup: [{ label: "Can View" }, { label: "Can Create" }] },  { emptyGorup: [] }];我正在使用此代碼將對象數(shù)組轉(zhuǎn)換為對象方法一:let permissions =  data &&  data.reduce((a, b) => {    const onlyKey = Object.keys(b)[0];    a[onlyKey] = b[onlyKey].map(i => i.value);    return a;  }, {});//Output : {group:["can view","can create"],topgroup:["can view","can create"],emptygroup:[]}我的問題是,如果 Object 屬性為空 [],我不想獲取對象屬性。例如,在我的輸出中,我可以看到對象屬性 emptygroup 是 []。 {emptygroup:[]}.如果 emptygroup 為 [],我的預(yù)期輸出將是//Output : {group:["can view","can create"],topgroup:["can view","can create"]}我怎樣才能做到這一點 ?
查看完整描述

3 回答

?
鳳凰求蠱

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

嘗試檢查數(shù)組的長度


const permissionData = [

  { group: [{ label: "Can View" }, { label: "Can Create" }] },

  { topgroup: [{ label: "Can View" }, { label: "Can Create" }] },

  { emptyGorup: [] }

];


let permissions =

  permissionData &&

  permissionData.reduce((a, b) => {

    const onlyKey = Object.keys(b)[0];

    if(b[onlyKey].length) {

      a[onlyKey] = b[onlyKey].map(i => i.label);

    }

    return a;

  }, {});

  

console.log(permissions)


查看完整回答
反對 回復(fù) 2022-05-26
?
慕慕森

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

您可以擴展您當(dāng)前的代碼。獲得對象后,您可以使用過濾器過濾掉帶有空數(shù)組的鍵,并從過濾后的值再次構(gòu)建對象


let obj = {

  group: ["can view"],

  topgroup: ["can view", "can create"],

  emptygroup: []

}


let finalObj = Object.fromEntries(Object.entries(obj).filter(([key, value]) => Array.isArray(value) && value.length))


console.log(finalObj)


查看完整回答
反對 回復(fù) 2022-05-26
?
天涯盡頭無女友

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

您可以在 reduce 中添加條件:


let permissions =

  permissionData &&

  permissionData.reduce((a, b) => {

    const onlyKey = Object.keys(b)[0];

    if (a[onlyKey]) {

      a[onlyKey] = b[onlyKey].map(i => i.value);

    }

    return a;

  }, {});


查看完整回答
反對 回復(fù) 2022-05-26
  • 3 回答
  • 0 關(guān)注
  • 342 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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