Javascript 如何获取json对象中属性的值
如何使用字符串正确获取对象的值 我有以下代码:Javascript 如何获取json对象中属性的值,javascript,json,attributes,Javascript,Json,Attributes,如何使用字符串正确获取对象的值 我有以下代码: let o = { dispatcher: { initials: 'abc' } } o["dispatcher.initials"] # undefined 我得到的字符串已经是这样的“dispatcher.initials”。我不能用这样的字符串吗 我希望获得值abc,如果您想创建一个函数从path获取属性,那么您可以使用 let o={dispatcher:{initials:'abc'} const getVal=(obj,path)
let o = { dispatcher: { initials: 'abc' } }
o["dispatcher.initials"]
# undefined
我得到的字符串已经是这样的“dispatcher.initials”。我不能用这样的字符串吗
我希望获得值abc,如果您想创建一个函数从path获取属性,那么您可以使用
let o={dispatcher:{initials:'abc'}
const getVal=(obj,path)=>path.split('.').reduce((ac,a)=>(ac |{})[a],obj);
console.log(getVal(o,“dispatcher.initials”)
您可以拆分字符串并减少以循环通过数组
let o={dispatcher:{initials:'abc'};
让str=“dispatcher.initials”;
让结果=str.split(“.”)。reduce((c,v)=>c!=null?c[v]:null,o);
控制台日志(结果)
o.dispatcher.initials
或o[“dispatcher”][“initials”]
我得到的字符串已经是这样的“dispatcher.initials”
。我不能使用这样的字符串吗?如果路径断开,代码将抛出错误。第二个问题是,如果只有这一条路径,为什么不做o.dispatcher.initials