前提・実現したいこと
連想配列の変数から値を抜き出すときに、変数を使ってvalueを抜き出したいのですが、
ネストになっているキーを変数で指定する方法がわからず困っております。
教えていただけると幸いです。
該当のソースコード
js
1const player = { "name": "Ronaldo", "team": "Juventus" , "detail": { "age":23, "height":180 }} 2const key = 'name' 3console.log(player[key]) // Ronaldo
このとき、detail配下のageを一つの変数で指定して取得したいです。
試したこと
player['detail']['age'] // 変数(key)によるキー指定で取得できるようにしたい // NG例 const key = 'detail.age' player[key] // undefined player.key // undefined
この方法で取得はできるのですが美しくなく、もっと良い方法がある気がしております。
let key = 'detail.age' let player = { "name": "Ronaldo", "team": "Juventus" , "detail": { "age":23, "height":180 }} temp = key.split('.') if (temp.length >1) { player[temp[0]][temp[1]] } else { player[temp[0]] }
宜しくおねがいします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/30 12:22