javascript - 如何通過參數獲取Object的子節點?
問題描述
代碼如下:
let china = { zhejiang: {hangzhou: ’xihu’ }}// xihuconsole.log(china.zhejiang.hangzhou)// xihuconsole.log(china[’zhejiang’][’hangzhou’])// 能否通過 key 來訪問 china 使之能輸出 xihuconsole.log( china[key] )
問題解答
回答1:let china = { zhejiang: {hangzhou: ’xihu’ }};//改造結構Object.keys(china).forEach(function(key){ Object.keys(china[key]).forEach(function(subkey){china[subkey] = china[key][subkey]; });});console.log( china[’hangzhou’] );/* xihu*/回答2:
你的意思是這樣?
let key = ’zhejiang’;console.log( china[key] )
還是這樣?es2015允許使用變量做為key:
var b = ’foo’;var o ={ [b] :’aa’};o[b]//aa
如果不是的話,直接china[key],key會因為沒有定義報錯吧
回答3:不能這樣,除非你for...in遍歷一下,輸出xihu
相關文章:
1. mysql優化 - mysql 一張表如果不能確保字段列長度一致,是不是就不需要用到char。2. mysql 怎么做到update只更新一行數據?3. 使用python中的pandas求每個值占該列的比例4. javascript - 新浪微博網頁版的字數限制是怎么做的5. python - scrapy 如何組合2個不同頁面的數據,一并存儲6. python2.7 - python 函數或者類 代碼的執行順序7. sublime可以用其他編譯器替換嗎?8. javascript - 用jsonp抓取qq音樂總是說回調函數沒有定義9. python - 多態調用方法時卻顯示bound method...10. node.js - mysql如何通過knex查詢今天和七天內的匯總數據
