2011-10-11 169 views
1

基本上我想增加變量的名字。什麼是正確的語法來做到這一點?遞增變量的名稱

for (i=0; i<5; i++) { 
    eval("var slider_" + i); 

    var slider_+i = function(){ 
    //some code 
} 

dojo.addOnLoad(slider_+i); 

回答

6

爲什麼不只是使用數組?

var slider = []; 

for (i=0; i<5; i++) { 
    slider[i] = function(){ 
     //some code 
    } 

    dojo.addOnLoad(slider[i]); 
} 

或者,您可以根據它們都包含在對象上訪問它們。假設他們是全局變量(但願不是):

for (i=0; i<5; i++) { 
    window["slider_"+i] = function(){ 
     //some code 
    } 

    dojo.addOnLoad(window["slider_"+i]); 
} 

window["something"]是另一種方式來訪問名爲something一個全局變量。

0

正確的做法是使用對象或數組。這應該工作:

var slider = {}; // object 
// var slider = [] ; // array 
for (i=0; i<5; i++) { 
    slider[i] = function() { 
     // some code ... 
    } 
    dojo.addOnLoad(slider[i]); 
}