例如A = 10
,我想创建一个带有值的变量。
像这样:var i10
或A = 2
,我想创建一个像var i2
这样的变量。
例如A = 10
和B = 5
,我想要一个var A10B5
,这可能吗?
编辑:更多信息
答案 0 :(得分:3)
有可能,正如this question on SO中详细解释的那样。
A = 10;
B = 5;
window['A' + A + 'B' + B] = 'Hello';
alert(A10B5);
// alerts: Hello
查看this jsfiddle中的演示。
但是,我没有看到它的重点,因为你必须保留对该对象名称的引用,更容易将值存储在一个函数或对象中的局部变量中,该函数或对象具有相同的名称或使用数组来存储值。拟议的预期用途解决方案:
使用二维数组:
Calendar[A][B] = 'value';
通过创建动态变量,每次需要访问变量时都必须重建变量的名称。通过使用二维数组,您可以将数组与两个变量一起使用,这样可以省去代码一遍又一遍地重建变量名称,使其更易于阅读和维护。
答案 1 :(得分:1)
var A = 10, B = 5;
window['A' + A + 'B' + B] = "You should avoid polluting global " +
"scope at all costs.";
alert(A10B5);
相反,你应该求助于对象:
var myVars = {}, A = 10, B = 5;
myVars['A' + A + 'B' + B] = "Just like this.";
alert(myVars.A10B5);
答案 2 :(得分:1)
您可以使用eval()函数
创建动态变量var a = 10;
eval("variable" + a + " = a");
返回名为“variable10”且值为“10”的变量。
也是look here!
有关详细信息:w3schools eval()
希望它有所帮助^ _ ^
答案 3 :(得分:0)
您可以让A = 10
和B = A
在不同的变量中使用相同的金额,但是,您也可以制作if语句,如
if(A > 10){ A = 11 }
答案 4 :(得分:0)