初始化变量在JavaScript
问题描述:
反复使用循环
我的问题是,现在我还能反复初始化变量(使用后,他们只改变数字),这是我的代码初始化变量在JavaScript
for(i = truStorage.getItem('elementCount'); i>0; i--) {
var obj = truStorage.getItem("element_" + i);
var [obj_+i] = element(erd.Entity , obj.posx, obj.posy, obj.text);}
};
基本上我只是想初始化像
变量something_i = "";
,结果会是这样
var element_1 = element(erd.Entity, 100, 200, "Employee");
var element_2 = element(erd.Entity, 100, 400, "Salesman");
var element_3 = element(erd.WeakEntity, 530, 200, "Wage");
var element_4 = element(erd.IdentifyingRelationship, 350, 190, "gets paid");
我不试图使用变量作为存储,而是为一个函数实例化一个元素。
答
这是一个数组的作业。
var something = [];
var somethings = 5;
for(var i = 0; i < somethings; i++) {
something[i] = "";
}
您现在应该能够访问这样的五个值:您使用0
console.log(something[0])
console.log(something[1])
console.log(something[2])
console.log(something[3])
console.log(something[4])
公告访问的第一要素。这是因为JavaScript数组是基于零的。
答
这是使用数组最好的情况:
var counter=0,something = new Array();
for(i = truStorage.getItem('elementCount'); i>0; i--) {
something[counter] = truStorage.getItem("element_" + i).text;
counter++;
}
};
答
尝试:
for(var i=1; i<=4; i++) {
this["something_" + i] = i;
}
console.log(something_1); //outputs 1;
console.log(something_2); //outputs 2;
console.log(something_3); //outputs 3;
console.log(something_4); //outputs 4;
注:使用数组会更快!
+0
1:使用窗口,而不是这个(它可以随着范围而改变,而不是在严格模式下的根级定义)和2:其他问题提供了更好的回答*问题*(如果不是问题);你至少应该注意到这一点。 – Dave
为什么你不使用'Array'?!? – thefourtheye
你想完成什么?这听起来像个不好的主意,也许我们可以帮助你提出想法:) –
每次遇到这种情况时,只需将所有对象压入一个数组并迭代它即可。 – ReX357