在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)?
}
答案 0 :(得分:3)
for (var i = 0; i < 5; i++) {
var var_name = 'msg_' + i;
window[var_name] = i;
console.log(window[var_name]);
}
答案 1 :(得分:2)
您应该将值放在数组中。
var messages = ["first", "second", "third"];
for (var i = 0; i < n; i++)
{
alert (messages[i])
}
答案 2 :(得分:2)
我建议使用array
而不是你正在做的事情。
var myVarialbes= [];
for (var i = 0; i < n; ++i) {
myVarialbes[i] = "some stuff" + i;
}
答案 3 :(得分:0)
这里有一个简单的方法:
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]);
}
答案 4 :(得分:0)
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);
}
}
但你为什么不使用数组?