将字符串附加到变量名称

时间:2011-11-24 17:58:41

标签: javascript variables

有没有办法在javascript中定义变量以将它们附加到另一个变量?

var card_id;
var card_links_grid+card_id;

我希望第二个变量附加第一个变量中的信息。对于每个card_id,都会有一个card_links_grid。我希望能够访问特定card_id的card_links_grid变量。

这样做的正确方法是什么?

3 个答案:

答案 0 :(得分:7)

正确的方法是使用数组或对象,具体取决于id是顺序还是命名。

var card_links_grid = {};
var card_id = "the_hanged_man";
card_links_grid[card_id] = "some value";

var card_links_grid = [];
card_links_grid.push("some value");

变量变量是可能的,但只有一些难以维护和调试的方法应该避免。使用为要表示的数据结构设计的对象类型。

答案 1 :(得分:1)

我还建议使用数组或对象。但是如果你想尝试使用变量变量方法,你可以尝试这样做。

var card_id=1;
window['card_links_grid_' + card_id] = 'Marco';
document.write(window['card_links_grid_' + card_id]);

http://jsfiddle.net/Q2rVH/

价: http://www.i-marco.nl/weblog/archive/2007/06/14/variable_variables_in_javascri

答案 2 :(得分:0)

你可以使用eval方法来获取相同内容并使用它......就像这样

var card_id=3;

var card_links_grid1=5,card_links_grid2=6,card_links_grid3=7;

eval("card_links_grid"+card_id) //will  o/p 7
P.S:如果我正确地解决了问题