我需要從另一個變量的值創建一個變量。作爲一個例子,這將是類似我會怎麼做這在VFP:如何從另一個變量的值創建一個變量
nameOfNextVar = "port_no_1";
eval(nameOfNextVar) = 7493
那我就可以說:
alert(port_no_1);
以及警報會給我7493 ...
這是可能的JavaScript?
TIA
丹尼斯
我需要從另一個變量的值創建一個變量。作爲一個例子,這將是類似我會怎麼做這在VFP:如何從另一個變量的值創建一個變量
nameOfNextVar = "port_no_1";
eval(nameOfNextVar) = 7493
那我就可以說:
alert(port_no_1);
以及警報會給我7493 ...
這是可能的JavaScript?
TIA
丹尼斯
您可以使用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);
作爲一個經驗法則,你應該儘量避免EVAL可能的情況下。但是,如果沒有其他方式,那麼你可以這樣做:
nameOfNextVar = "port_no_1";
eval("var " + nameOfNextVar + " = 7493");
alert(port_no_1);
希望有所幫助。
與EVAL:重複http://stackoverflow.com/questions/592630/javascript-variable-variables – malletjo 2012-02-21 19:15:20