我有以下对象
var obj = {};
obj.foo = {};
obj.foo.bar = "I want this";
给定“路径”"foo.bar"
作为字符串,我如何检索obj.foo.bar
(或obj[foo][bar]
)?
我有以下对象
var obj = {};
obj.foo = {};
obj.foo.bar = "I want this";
给定“路径”"foo.bar"
作为字符串,我如何检索obj.foo.bar
(或obj[foo][bar]
)?
这里有一个方法:
function getKey(key, obj) {
return key.split('.').reduce(function(a,b){
return a && a[b];
}, obj);
}
getKey('foo.bar', obj); //=> "I want this"
如果path = "foo.bar"
那么你可以写
var keys = path.split('.');
console.log(obj[keys[0]][keys[1]]);
只需使用 obj.foo.bar.. 即可;