在Javascript中的“variables”variables?
我知道在PHP中可能有“可变”variables。 例如
$x = "variable"; $$x = "hello, world!"; echo $variable; // displays "hello, world!" 这是可能的JavaScript? 怎么做?
 没有单一的解决scheme(好吧,有eval ,但不要认真考虑)。 可以通过windowdynamic访问全局variables,但对于函数本地variables不起作用。 
几乎总是比使用variablesvariables更好的解决scheme! 相反,您应该查看数据结构并为您的问题select正确的数据结构 。
如果你有一组固定的名字,例如
 // BAD var foo = 42; var bar = 21; var key = 'foo'; console.log(eval(key)); 
如果你不顾一切地做到这一点,你可以尝试使用eval():
 var data = "testVariable"; eval("var temp_" + data + "=123;"); alert(temp_testVariable); 
或者使用窗口对象:
 var data = "testVariable"; window["temp_" + data] = 123; alert(window["temp_" + data]); 
http://www.hiteshagrawal.com/javascript/dynamic-variables-in-javascript
要只用一个string在javascript中引用一个variables,你可以使用
 window['your_variable_name'] 
您也可以设置和引用variables以及variables中的对象。
当然可以,但不要。 variables必须是全局的。
 var killingFunction = 'alert' var killMeNow = 'please' var please = 'You have been killed!' this[killingFunction](this[killMeNow]) 
 var vars = {}; var var_name = "str"; vars[var_name] = "working"; console.log(vars["str"]); 
 您可以使用JavaScript eval(str)函数。 
这个函数做的是将提供的string转换成JS代码,然后执行它。
例如:
 eval("console.log('hello world')"); // Logs hello world 
所以要把它用作variablesvariables,你可以这样做:
 var a = "hello"; var hello = "world"; console.log(a + " " + eval(a)); // Logs hello world 
这将产生完全相同的输出:
 console.log(a + " " + hello); // Logs hello world 
(例子取自PHP手册的variablesvariables 。)
我们可以这样使用。
 var objectName[key]{ 'someDataName':'thatData', 'someOtherDataName':'thisData' } 
如果你想获得价值的价值,所以你可以使用循环
 for(key in objectName){ objectName[key].someDataName; objectName[key].someOtherDataName; }