user455318 user455318 - 5 months ago 24
Javascript Question

Increment the name of variable

Basically I want to increment the name of the variable. What is the correct syntax to do this?

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

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

dojo.addOnLoad(slider_+i);

Answer

Why not just use an array?

var slider = [];

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

    dojo.addOnLoad(slider[i]);
}

Alternatively, you could access them based on the object they are contained within. Assuming they are global variables (hopefully not):

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

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

window["something"] is another way to access a global variable named something.

Comments