使用我有一组变量:jQuery的循环 - 循环计数为内环
var var1 = 0;
var var2 = 0;
var var3 = 0;
var var4 = 0;
var var5 = 0;
我要检查他们都用一个for循环,但我不太清楚的语法:
for(var i = 1; i<6; i++){
alert(var[i]);
}
for循环没有结果。
使用我有一组变量:jQuery的循环 - 循环计数为内环
var var1 = 0;
var var2 = 0;
var var3 = 0;
var var4 = 0;
var var5 = 0;
我要检查他们都用一个for循环,但我不太清楚的语法:
for(var i = 1; i<6; i++){
alert(var[i]);
}
for循环没有结果。
,把它们放进一个数组来代替。
var vars = [0, 0, 0, 0, 0, 0];
for(var i = 0; i < vars.length; i++) {
alert(vars[i]);
}
为什么这会被低估?这是一个适合JavaScript的程序员的正确方法和最好的建议。 – Pointy 2014-08-27 15:01:43
这实际上并不是一个答案:) – Axel 2014-08-27 15:01:43
这是在改变这个问题。 – user2908232 2014-08-27 15:01:59
如果要定义在全球范围内的varables,您可以访问使用window['var'+i]
值:
for(var i = 1; i<6; i++){
alert(window['var'+i]);
}
要访问它们,您必须使用它们写入的范围。如果你的代码是在window
范围,将随即成为:当然
for(var i = 1; i<6; i++){
alert(window['var'+i]);
}
虽然它更干净,如果它是在特定的,无论你正在做一个不同的范围。在这些情况下往往
for(var i = 1; i<6; i++){
alert(this['var'+i]);
}
会工作。
您正在使用的数据构造对此不好。使用数组或对象对于您想要执行的操作以及易于扩展更加可行。
var arr = [0,0,0,0,0,0];
for (var i = 0; i < arr.length; i++) {
alert(arr[i]);
}
Downvote是为什么呢? – 2014-08-27 15:02:18
这实际上并不是一个答案:) – Axel 2014-08-27 15:02:18
这正在改变这个问题。数据结构是问题的给定。 – user2908232 2014-08-27 15:02:39
var [i]被使用它var是一个数组。但在你的情况下不是。最好的办法是将这些值放在一个数组中,比如;
var myvar = [0,0,0,0,0];
然后使用for循环来检查值。
for(var i = 1;i<6; i++){
alert(myvar[i-1]);
}
为什么没有数组并在循环中执行'array [i]'? – Mritunjay 2014-08-27 14:59:47
没有好的方法来做到这一点。你可以使用'window ['var1']'等等,但这只是一个狡猾的东西。改为使用数组或对象。 – adeneo 2014-08-27 15:00:08
[Javascript动态变量名称]的可能重复(http://stackoverflow.com/questions/5117127/javascript-dynamic-variable-name) – Teemu 2014-08-27 15:02:10