如何从另一个变量的值创建变量

时间:2012-02-21 19:12:38

标签: javascript jquery

我需要从另一个变量的值创建一个变量。举个例子,这与我在VFP中的表现类似:

nameOfNextVar = "port_no_1";
eval(nameOfNextVar) = 7493

然后我可以说:

alert(port_no_1);

警报会给我7493 ......

这可能在JavaScript ???

TIA

丹尼斯

2 个答案:

答案 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)​;​

http://jsfiddle.net/ngTQf/

其他替代方法是在对象或当前实例上定义属性。您还可以使用window来定义变量或属性。

var nameOfNextVar = "port_no_1";
this[nameOfNextVar] = 7493;
alert(this.port_no_1);

window[nameOfNextVar] = 7493
alert(window.port_no_1); 

http://jsfiddle.net/ngTQf/2/

相关问题