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

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

獲取嵌套對象內項目的絕對鍵

獲取嵌套對象內項目的絕對鍵

絕地無雙 2022-06-16 10:55:25
所以我有一個對象,說 var obj = {   flowers: {             rose: 'red',            sunflower: 'yellow',         },   vegetables: { ... } }無論如何要讓紅色的關鍵路徑返回為 obj['flowers']['rose'] ?(在我的實際對象中不可能有重復的值或鍵,所以不會有問題)我曾嘗試使用 Object.keys,但它會輸出所有內容,因為它沒有放置特定值的選項。嘗試使用 for 循環(huán),但如果嵌套只是在單層,它會起作用。我也嘗試尋找類似的問題,但無法從中找出任何東西。請放一些光。
查看完整描述

1 回答

?
料青山看我應如是

TA貢獻1772條經驗 獲得超8個贊

使用迭代鍵和值的遞歸函數。找到值后,返回鍵。當找到子對象時,遞歸調用該函數,如果遞歸調用給出結果,則返回它:


var obj = {

  flowers: {

    rose: 'red',

    sunflower: 'yellow',

  },


  vegetables: {

  }


};


const findPath = (parentObj, valueToFind) => {

  for (const [key, value] of Object.entries(parentObj)) {

    if (value === valueToFind) return '.' + key;

    if (typeof value === 'object' && value !== null) {

      const possibleResult = findPath(value, valueToFind);

      if (possibleResult) return '.' + key + possibleResult;

    }

  }

};

console.log('obj' + findPath(obj, 'red'));


查看完整回答
反對 回復 2022-06-16
  • 1 回答
  • 0 關注
  • 96 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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