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