JavaScriptdynamicvariables名称

好的,所以我想创buildvariables,当用户点击扔代码每次点击添加一个新的variables。 我目前正在使用jQuery和JavaScript我不能做到这一点服务器端,这必须在浏览器中完成。

newCount = document.getElementById('hello').innerHTML; $('.hello').click(function(){ //set count fast enumeration newCount++; var hello + newCount = '<p>Hello World</p>'; }); 

所以我想variables是hello1,hello2,hello3,hello4等

你只能用括号来做这个,这意味着你必须把variables附加到某个东西上。
全球范围将是窗口,所以这将是window['hello' + newCount] ,但用一堆随机属性污染全局名称空间听起来不是一个好主意,所以使用一个对象似乎更好

 var vars = {}; var newCount = parseInt($('#hello').html(), 10); $('.hello').click(function(){ newCount++; vars['hello' + newCount] = '<p>Hello World</p>'; }); alert( vars['hello1'] ); 

小提琴

在JavaScript中(据我所知)有两种方法可以创builddynamicvariables:

 eval Function window object eval: var pageNumber = 1; eval("var text" + pageNumber + "=123;"); alert(text1); window object: var pageNumber = 1; window["text" + pageNumber] = 123; alert(window["text" + pageNumber]); 

更多inforamtion 如何在javascript中声明和使用dynamicvariables?

我只是使用一个简单的数组来存储variables。 那么索引为n的对象将是variablesn等。

你可以使用window

 var window['hello' + newCount ] = '<p>Hello World</p>'; 

同样..

 newCount = document.getElementById('hello').innerHTML; $('.hello').click(function(){ //set count fast enumeration newCount++; var window['hello' + newCount ] = '<p>Hello World</p>'; alert(window['hello' + newCount ]); }); 
 var newCount = 0; $('#btn').click(function(){ newCount++; $('#hello').html('hello' + newCount); }); 

的jsfiddle

最简单的方法

 var types = {}; for(var i=1; i<=3; i++){ types["ashish"+i] = 'The value of dynamic variable, val'; } 

的console.log(types);

你可以testing它

的jsfiddle