我需要从另一个变量的值创建一个变量。举个例子,这与我在VFP中的表现类似:
nameOfNextVar = "port_no_1";
eval(nameOfNextVar) = 7493
然后我可以说:
alert(port_no_1);
警报会给我7493 ......
这可能在JavaScript ???
TIA
丹尼斯
答案 0 :(得分:5)
根据经验,您应该尽可能避免使用eval。但是,如果没有其他方法,那么你可以这样做:
nameOfNextVar = "port_no_1";
eval("var " + nameOfNextVar + " = 7493");
alert(port_no_1);
希望有所帮助。
答案 1 :(得分:2)
您可以使用JavaScript eval
方法尝试这样的操作。但是如果可能的话,应该避免使用eval
。
var nameOfNextVar = "port_no_1";
eval(nameOfNextVar + " = " + 7493);
alert(port_no_1);
其他替代方法是在对象或当前实例上定义属性。您还可以使用window
来定义变量或属性。
var nameOfNextVar = "port_no_1";
this[nameOfNextVar] = 7493;
alert(this.port_no_1);
window[nameOfNextVar] = 7493
alert(window.port_no_1);