我有一個結構如下的 NBA 球隊名稱物件:
const HomeAndAwayTeams =
{
teams: {
'0': { hTeam: 'San Antonio', AwTeam: 'New Orleans' },
'2': { hTeam: 'Sacramento', AwTeam: 'Orlando'
},
'4': { hTeam: 'Indiana', AwTeam: 'Toronto' },
'6': { hTeam: 'Chicago', AwTeam: 'Cleveland' },
'8': { hTeam: 'Brooklyn', AwTeam: 'Miami' },
'10': { hTeam: 'Milwaukee', AwTeam: 'Memphis'
},
'12': { hTeam: 'Oklahoma City', AwTeam: 'Denver' },
'14': { hTeam: 'Houston', AwTeam: 'Portland' } }
}
我正在尋找用他們各自的團隊昵稱替換城市名稱。
我有一個物件設定,其昵稱作為值,城市名稱作為鍵。
const NBATeamsNickNames = {
"Atlanta": "Hawks",
"Boston": "Celtics",
"Brooklyn": "Nets",
"Charlotte": "Hornets",
"Chicago": "Bulls",
"Cleveland": "Cavaliers",
"Dallas": "Mavericks",
"Denver": "Nuggets",
"Detroit": "Pistons",
"Golden State": "Warriors",
"Houston": "Rockets",
"Indiana": "Pacers",
"LA": "Clippers",
"Los Angeles": "Lakers",
"Memphis": "Grizzlies",
"Miami": "Heat",
"Milwaukee": "Bucks",
"Minnesota": "Timberwolves",
"New Orleans": "Pelicans",
"New York": "Knicks",
"Oklahoma City": "Thunder",
"Orlando": "Magic",
"Philadelphia": "76ers",
"Phoenix": "Suns",
"Portland": "Trailblazers",
"Sacramento": "Kings",
"San Antonio": "Spurs",
"Toronto": "Raptors",
"Utah": "Jazz",
"Washington": "Wizards"
}
我嘗試了幾種方法來替換這些值,但如果它是嵌套的,我不知道如何訪問它。
例如,我嘗試過這樣的事情:
for (const key in NBATeamsNickNames) if (key in HomeAndAwayTeams) HomeAndAwayTeams = NBATeamsNickNames[key];
當然,只有在 HomeAndAwayTeams 中的物件值沒有嵌套并且在基本級別時才有效。
我嘗試了一些其他方法,例如 for 回圈和映射,但我在迭代物件方面缺乏經驗,尤其是在這種格式下,我試圖理解以這種方式訪問??資料并將其替換為這個案例。
HomeAndAwayTeams 中的球隊數量每天都會變化,不會是一個固定的數量。當然,物件內的團隊也會每天都在變化。
我很感激任何幫助,謝謝。
uj5u.com熱心網友回復:
我猜你不需要迭代HomeAndAwayTeams物件,你需要迭代HomeAndAwayTeams.teams. 您可以使用Object.keys方法來做到這一點。
這將更改您的物件。
const { teams } = HomeAndAwayTeams
for (const key of Object.keys(teams)) {
if (teams[key].hTeam in NBATeamsNickNames) {
teams[key].hTeam = NBATeamsNickNames[teams[key].hTeam]
}
if (teams[key].AwTeam in NBATeamsNickNames) {
teams[key].AwTeam = NBATeamsNickNames[teams[key].AwTeam]
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/451792.html
標籤:javascript for循环 嵌套的 迭代 javascript 对象
上一篇:在for回圈中組合資料框列的函式
