可能重複:
Accessing nested JavaScript objects with string key如何從Javascript中的參數訪問對象中的對象?
我具備的功能
function _get(name) {
return plugin._optionsObj[name] !== undefined ?
plugin._optionsObj[name] : plugin._defaults[name];
}
我希望能有我的_defaults對象的內部對象,但後來我不不知道如何檢索它們,但只使用一組方括號。
即
plugin._defaults = {
val1: 1,
val2: 2,
obj1: {
someVal: 3
}
}
是否有可能從我上面的功能訪問 'someVal'?我嘗試傳遞'obj1.someVal'作爲參數,但它不起作用。想法?
編輯:我找到了一個解決方案,我把它公佈在下面作爲答案。我寫了一個非常漂亮的小函數,通過字符串來檢查嵌套值,並且我不必爲了實現而更改功能。我希望這可以幫助任何處於類似情況的人。
return plugin._optionsObj [name]!== undefined? plugin._optionsObj [name]:plugin._defaults [obj1] [someVal];不起作用? – lelloman
看到這個要點:https://gist.github.com/3208381#file __。deep.js ...如果你使用Underscore,你只需將路徑(例如'obj1.someVal')作爲一個字符串傳遞,並且它遍歷該對象圖找到嵌套值。 –
我期待着看看是否有辦法解決這個問題,而不改變我的功能或實現它。 – Klik