Jquery 动态添加变量到另一个变量名

Jquery add variable to another variable name dynamically

我定义三个变量(仅作为示例)如下:

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 变量,以便它调用正确的方法。但这不起作用。这样的事情甚至可能吗?

window.myCirclePlayer_[index].doMethod();

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

你可以这样做:

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

然后您可以更自然地使用索引,例如:

circlePlayers[index].doMethod();

您还可以添加更多 circlePlayers 如:

circlePlayers.push(...);

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