jQuery在for循环中动态增加变量名

时间:2012-03-26 10:32:03

标签: javascript jquery variables for-loop count

是否可以将i添加到for-loop中的var? 在错误的语法中,它看起来像下面的代码

for(i=1; i<=countProjects; i++){

    var test + i = $(otherVar).something();

};

谢谢!

2 个答案:

答案 0 :(得分:6)

最好为此使用数组:

var test = [];

for (i = 1; i <= countProjects; i++) {
    test[i] = $(otherVar).something();
};

然后你可以访问这样的值:

console.log(test[1]);
console.log(test[2]);
etc...

如果你有充分的理由为每个值命名变量,你可以像这样创建它们:

for (i = 1; i <= countProjects; i++) {
    window["test" + i] = $(otherVar).something();
};

console.log(test1);

答案 1 :(得分:5)

Mat所述,您应该使用数组来实现此类功能:

var projects = [];
for (var i = 0; i <= countProjects; i++) {
    projects.push($(otherVar).something());
}

您可以使用object["varname"]语法制作变量名称。但它是 _generally _ 不良做法:

var varName;
for (var i = 0; i <= countProjects; i++) {
    varName = "test" + i.toString();
    this[varName] = $(otherVar).something();
}
console.log(test1);