我在这个结构中有对象:
obj = {
user: { name: 'jeterson' },
title: 'I am a test'
}
我有一把有价值的钥匙:user.name
。
我试图获得这样的价值:obj[key]
, 意义obj['user.name']
。它不起作用,只适用于obj.title
.
我的对象有许多也是对象的值,我想获得这样的值:
myobject[mykey]
可以像上面那样从属性对象中获取值吗?
您可以通过以下方式访问它:
obj['user']['name']
或者:
obj.user.name
如果您想从“user.name”之类的键获取值,您必须自己执行一些逻辑。你可以像这样将一些东西组合在一起:
let obj = {
user: {
name: 'jeterson'
},
title: 'I am a test'
}
let key = 'user.name';
let keys = key.split('.');
let res = obj;
while (keys.length > 0 && res) {
let k = keys.shift();
res = res[k];
}
console.log(res) // "jeterson"
当键不匹配时,res 保持undefined
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)