我有json对象如下
var data = {
datetime:{
time:"9:30 AM",
date:"24-09-2017"
}
}
我有字符串var element = "data.datetime.time"
如何使用元素访问时间。
答案 0 :(得分:2)
Split字符串(点作为分隔符),并使用Array#reduce从对象中提取数据:
var data = {
datetime:{
time:"9:30 AM",
date:"24-09-2017"
}
}
var element = "data.datetime.time";
var result = element.split('.').reduce(function(r, p) {
return typeof r === 'object' ? r[p] : null; // if r is an object, return the prop value, if not return null
}, { data: data });
console.log(result);
答案 1 :(得分:0)
new Function(`return ${element}`)()
答案 2 :(得分:0)
我刚刚找到了答案..
我们可以使用eval()
var data = {
datetime:{
time:"9:30 AM",
date:"24-09-2017"
}
}
var element = "data.datetime.time";
console.log(eval(element));