我在这个小提琴中重建了一个基本层面的情况:http://jsfiddle.net/5Y5FN/74/。我有一些以数字结尾的变量:
var var1;
var var2;
var var3;
如何通过更改变量名称末尾的数字,以for
语句在var(1), var[2], var+'3'
语句中迭代它们的方式来使用这些变量?甚至可以这样做吗?目标是将每个变量的值更改为3.以下是我尝试执行此操作的一些方法:
{{1}}
答案 0 :(得分:2)
重命名变量,使它们是Javascript数组,而不是命名变量。结果是你可以迭代它们。
因此var1,2,3将成为varArray [1],varArray [2],varArray [3]等。
答案 1 :(得分:0)
如果您的var1
,var2
等变量位于某个函数中,那么您无能为力。但是如果这些变量在顶级作用域中声明,它们将被设置为全局对象(window
,在浏览器中)的属性。
如果是这种情况(在顶级对象中定义的变量,或者在某些其他对象中定义,但不是作为函数范围的变量),则可以执行以下操作:
for (var i = 1; i < 4; i++) {
window['var' + i] = 'some value';
}