如何在javascript中动态引用变量

Chr*_*ier 8 javascript variables dynamic

我试图在JavaScript中动态引用变量

我试图调用的变量是amtgc1#(其中#从1-7变化)

我使用while语句循环,我的while语句中的计数变量的值对应于我试图调用的变量的最后一位数.

例如:

            var inc=3;
            var step=0;
            while(step < inc){
                var dataString = dataString + amtgc1#;
                var step = step+1;
            }
Run Code Online (Sandbox Code Playgroud)

其中#是基于变量"step"的值.我该怎么做呢?任何帮助表示赞赏!谢谢!!

Dan*_*ett 8

而不是定义amtgc1[1-7]为7个不同的变量,而是将它们实例化为数组.所以你的服务器代码会发出:

var amtgc1 = [<what used to be amtgc11>,<what used to be amtgc12>, ...insert the rest here...];
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用数组语法在循环中引用它们:

var dataString = dataString + amtgc1[step];
Run Code Online (Sandbox Code Playgroud)


bra*_*rad 5

你可以做到这一点(afaik)的唯一方法是将所有amtgc1#vars抛出一个对象,例如:

myVars = {
  amtgc1: 1234,
  amtgc2: 12345,
  amtgc3: 123456,
  amtgc4: 1234567
};
Run Code Online (Sandbox Code Playgroud)

然后你可以参考它

myVars["amtgc" + step];
Run Code Online (Sandbox Code Playgroud)