Javascript 评估功能不起作用
代码:Javascript 评估功能不起作用,javascript,reactjs,eval,Javascript,Reactjs,Eval,代码: console.log(propertyName); console.log(eval(this.state.propertyName)) console.log(this.state.DriverFirstName); 输出: console.log(propertyName); console.log(eval(this.state.propertyName)) console.log(this.state.DriverFirstName); DriverFirstN
console.log(propertyName);
console.log(eval(this.state.propertyName))
console.log(this.state.DriverFirstName);
输出:
console.log(propertyName);
console.log(eval(this.state.propertyName))
console.log(this.state.DriverFirstName);
DriverFirstName
undefined
fsdfds
我想访问由字符串值(propertyName)定义的变量。 我试过Eval函数。
如果我试图通过eval函数访问变量,为什么变量未定义?您试图做的是:
console.log(propertyName);
console.log(eval(this.state.propertyName))
console.log(this.state.DriverFirstName);
this.state[propertyName]
console.log(propertyName);
console.log(eval(this.state.propertyName))
console.log(this.state.DriverFirstName);
这将访问与变量propertyName
的值匹配的state属性
console.log(propertyName);
console.log(eval(this.state.propertyName))
console.log(this.state.DriverFirstName);
假设
propertyName
值为'DriverFirstName'
,它与执行this.state['DriverFirstName']
相同,这与执行this.state.DriverFirstName相同,您想做什么?你能展示一下这个州里面的东西吗?如果可能的话,删除单词eval
并忘记它的存在几乎没有充分的理由使用eval()
。另外,我们也帮不上忙,因为您没有显示this.state.propertyName
的定义propertyName
与this.state.propertyName
不同,我想访问字符串值(propertyName)@Bobek定义的变量,您能做console.log(this.state)
并将输出粘贴到您的问题中吗?
console.log(propertyName);
console.log(eval(this.state.propertyName))
console.log(this.state.DriverFirstName);