访问对象属性时如何避免eval?
How to avoid eval when accessing object properties?
我读了很多书,但我无法弄清楚以下内容:
var eventCity = [
{date: 'Apr 11 2017', type: 'alpha'},
{date: 'Apr 26 2017', type: 'beta'}
];
var currentCity = 'eventCity'; // this is generated dynamically
var aDate = eval(currentCity)[0].date;
如何避免使用 eval()
保持相同的结果 ( aDate = 'Apr 11 2017'
)?
var options = []
options['eventCity']=[
{date: 'Apr 11 2017', type: 'alpha'},
{date: 'Apr 26 2017', type: 'beta'} ];
为什么不用对象,把动态值作为key呢?
var object = {
eventCity: [
{ date: 'Apr 11 2017', type: 'alpha' },
{ date: 'Apr 26 2017', type: 'beta' }
]
},
currentCity = 'eventCity', // this is generated dynamically
aDate = object[currentCity][0].date;
我读了很多书,但我无法弄清楚以下内容:
var eventCity = [
{date: 'Apr 11 2017', type: 'alpha'},
{date: 'Apr 26 2017', type: 'beta'}
];
var currentCity = 'eventCity'; // this is generated dynamically
var aDate = eval(currentCity)[0].date;
如何避免使用 eval()
保持相同的结果 ( aDate = 'Apr 11 2017'
)?
var options = []
options['eventCity']=[ {date: 'Apr 11 2017', type: 'alpha'}, {date: 'Apr 26 2017', type: 'beta'} ];
为什么不用对象,把动态值作为key呢?
var object = {
eventCity: [
{ date: 'Apr 11 2017', type: 'alpha' },
{ date: 'Apr 26 2017', type: 'beta' }
]
},
currentCity = 'eventCity', // this is generated dynamically
aDate = object[currentCity][0].date;