【发布时间】:2014-09-01 10:28:58
【问题描述】:
我想知道是否有更好的方法来编写这个不带 switch 语句的 for 循环。请忽略 for 循环中的 append,这只是为了演示。
我想知道是否有办法连接变量名?例如,不是使用 var name 和使用 switch 语句来为变量名赋值,有没有办法做类似的事情:
file + i // this will be the var file0, file1, file2.
var name = null,
content = null;
var file0 = {
name: null;
},
// file2, file3, file4.
file5 = {
name: null;
};
// Something's length is < 10.
for(var i = 0, len = something.length; i < len; i++){
switch(i){
case 0:
name = file0.name;
break;
case 1:
name = file1.name;
break;
case 2:
name = file2.name;
break;
case 3:
name = file3.name;
break;
case 4:
name = file4.name;
break;
case 5:
name = file5.name;
break;
default:
break;
}
// Better way to write name below?
$("#someContainer").append('<li class="file" id="file' + i + '">' + name + '</li');
}
【问题讨论】:
-
使用文件数组,而不是带数字的变量。
-
你可以这样做
var f = "file" + 0 + ".txt";
标签: javascript variables for-loop switch-statement