В javascript способ объявить var: var msg = 'hello', и просто вызвать msg получит значение "hello", если теперь у меня есть несколько var, например msg_1, msg_2... msg_n был бы способ получить значение, вызвав что-то вроде
for (var i = 0; i < n; i++)
{
var var_name = 'msg_' + i;
alert (var_name)?
}
for (var i = 0; i < 5; i++) {
var var_name = 'msg_' + i;
window[var_name] = i;
console.log(window[var_name]);
}
Вы должны поместить значения внутри массива.
var messages = ["first", "second", "third"];
for (var i = 0; i < n; i++)
{
alert (messages[i])
}
Я бы предложил использовать array
вместо того, что вы делаете.
var myVarialbes= [];
for (var i = 0; i < n; ++i) {
myVarialbes[i] = "some stuff" + i;
}
function do_test(){
var v1 = "variable 1";
var v2 = "variable 2";
var v3 = "variable 3";
for (i=1;i<4;i++){
var o = eval("v"+i); // you actually need this
alert (o);
}
}
Но почему вы не используете массивы?
Здесь вы получили простой способ:
var var_name=''; //declare variable only once
for (var i = 0; i < 5; i++) //You should change 5 to n
{
var_name = 'msg_' + i;
alert (var_name.split('_')[1]);
}
window[var_name]
:-)