2015-09-26 120 views
0

我定义(只是举例)三个变量如下:jQuery的添加变量到另一个变量名动态

window.myCirclePlayer_0 = ... 
window.myCirclePlayer_1 = ... 
window.myCirclePlayer_2 = ... 

别的地方在我的代码(假性码):

var index = 0 1 or 2; //index can be 0, 1 or 2, we don't know which yet 

然后我想要将索引添加到窗口变量,以便它调用正确的方法。这虽然不起作用。这是甚么可能吗?

window.myCirclePlayer_[index].doMethod(); 

回答

1

你可以做window['myCirclePlayer_' + index].doMethod()但你应该考虑的另一种方法。当你看到像foo_1foo_2这样的变量时,你可能应该使用一个数组。

比的方式,你可以这样做:

var circlePlayers = [ 
    ..., 
    ..., 
    ... 
]; 

然后你就可以更自然地使用索引,如:

circlePlayers[index].doMethod(); 

您还可以添加更多的circlePlayers,如:

circlePlayers.push(...); 

我只在上面的代码示例中使用了...,因为那是wh在你使用。

+0

辉煌。谢谢。 –