我無法有效地識別/替換我需要在物件中編輯工資率應用程式的值。
{
Physicians: {
telehealth: {
orgName: "ORG B",
weekdayEncounters: { type: "each", value: 15 },
weeknightEncounters: { type: "each", value: 16.25 },
weekendDayEncounters: { type: "each", value: 16.25 },
weekendNightEncounters: { type: "each", value: 17.25 },
holidayEncounters: { type: "each", value: 17.25 },
stipend: { type: "lump", value: 0 },
},
},
NonPhysicians: {
telehealth: {
orgName: "ORG B",
weekdayEncounters: { type: "each", value: 15 },
weeknightEncounters: { type: "each", value: 16.25 },
weekendDayEncounters: { type: "each", value: 16.25 },
weekendNightEncounters: { type: "each", value: 17.25 },
holidayEncounters: { type: "each", value: 17.25 },
stipend: { type: "lump", value: 0 },
},
},
date: "07-2021",
orgName: "ORG B",
ltc: false,
}
我希望value根據編輯的欄位替換最深物件的內部。在這一點上,我只是不斷得到越來越混亂的代碼,試圖深入讀取它的物件,然后替換正確的值。我在這里寫了一個例子。請放輕松,我還在學習。建議將不勝感激。我的問題當前是我正在回傳一個充滿未定義的陣列,然后是我需要的一個物件。提前致謝。
uj5u.com熱心網友回復:
我進入了您的示例并獲取了頂級物件“NEWRATES”。下面的示例代碼遍歷每個子物件 NEWRATES['ltc'][0]['Infinity']['Physicians']['associates'],并在鍵 'value' 下列印值。它還對型別進行快速檢查,因為最低級別包含一些映射到字串的鍵,例如 (orgName: "Infinity")。
Object.entries 函式呼叫對于使指示的物件 NEWRATES[...] 可迭代是必要的。
for( let [key,value] of Object.entries(NEWRATES["ltc"][0]['Infinity']['Physicians']['associates']) ){
if(typeof value == "object"){
console.log('value is: ' value.value);
}
}
這應該足以讓你重新開始。只需從 'ltc' -> 'standard' , 'Physicians' -> 'NonPhysicians' 替換頂級鍵,以遍歷頂級物件的其他部分。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/336791.html
標籤:javascript 目的 代替 嵌套
上一篇:迭代java中的物件串列
