Javascript 如何使用字符串作为目标对象?

Javascript 如何使用字符串作为目标对象?,javascript,Javascript,我正在尝试使用字符串以对象为目标 更改str=“a.b.c” 至a.b.c 我所拥有的 a={ b:{ c:{ d:‘工作’ } } } 功能go(o,v){ console.log(str[v]) } str=“a.b.c”//对对象的引用 go(str,“d”)要使用名为对象路径的库: 这样,您可以通过以下方式访问值: str = "a.b.c" objectPath.get(a, str); 您可以尝试使用eval()函数 a={b:{c:{d:'working'}} 功

我正在尝试使用
字符串
对象为目标

更改
str=“a.b.c”

至a.b.c


我所拥有的
a={
b:{
c:{
d:‘工作’
}
}
}
功能go(o,v){
console.log(str[v])
}
str=“a.b.c”//对对象的引用

go(str,“d”)
要使用名为
对象路径的库

这样,您可以通过以下方式访问值:

str = "a.b.c" 
objectPath.get(a, str);

您可以尝试使用eval()函数

a={b:{c:{d:'working'}}
功能go(o,v){
console.log(eval(str)[v])
}
str=“a.b.c”

go(str,“d”)
您可以在
上拆分字符串,然后在生成的数组上使用
reduce()
函数迭代钻取对象:

var a={
b:{
c:{
d:‘工作’
}
}
};
功能go(o,v){
返回值(o+“+v).拆分(“.”).减少((y,z)=>y[z],此);
}
var结果=go('a.b.c','d');

控制台日志(结果)无论如何,你为什么要这样做?这是没有意义的,因为您可以只使用对象语法
a.b.c.d