Javascript 节点js:如果变量名为字符串,是否访问json?

Javascript 节点js:如果变量名为字符串,是否访问json?,javascript,json,node.js,variables,Javascript,Json,Node.js,Variables,我有如下json对象 var data = { datetime:{ time:"9:30 AM", date:"24-09-2017" } } 我有stringvar element=“data.datetime.time”如何使用元素访问时间。字符串(点作为分隔符),并用于从对象提取数据: var数据={ 日期时间:{ 时间:“上午9:30”, 日期:“2017年9月24日” } } var element=“data.datetime.time”; v

我有如下json对象

var data = { 
   datetime:{
     time:"9:30 AM",
     date:"24-09-2017"
   }
}
我有string
var element=“data.datetime.time”
如何使用元素访问时间。

字符串(点作为分隔符),并用于从对象提取数据:

var数据={
日期时间:{
时间:“上午9:30”,
日期:“2017年9月24日”
}
}
var element=“data.datetime.time”;
var result=element.split('.').reduce(函数(r,p){
return typeof r=='object'?r[p]:null;//如果r是对象,则返回prop值,如果不返回null
},{data:data});

控制台日志(结果)我刚刚找到了这个问题的答案

简单地说,我们可以使用eval()


对不起,我打错了…真的很有效…谢谢@guest271314
new Function(`return ${element}`)()
var data = {    
      datetime:{
        time:"9:30 AM",
         date:"24-09-2017"    
      } 
   }

var element = "data.datetime.time";

console.log(eval(element));