如何在for循环中加入2个变量(javascript)

时间:2012-06-06 17:24:06

标签: javascript jquery loops

我正在尝试在循环中组合2个变量,因为下面的代码显示我需要为每个var添加一个数字,但我无法让它工作。这只是脚本的一部分。正如您所见,var item应该变为item1item2item3等等。

//代码

for (i=0; i<10; i++){
    var item+' '+i = $('ul').find('.list-item-'+i).text();
}       

6 个答案:

答案 0 :(得分:6)

我会使用数组:

var items = []
for (var i=0; i<10; i++){
    items[i] = $('ul').find('.list-item-'+i).text();
}

对于

来说也很重要
var item + ' ' + i

是变量的非法声明。

答案 1 :(得分:0)

分配给外部 for循环声明的数组元素。

http://www.hunlock.com/blogs/Mastering_Javascript_Arrays

答案 2 :(得分:0)

您应该使用数组:

var item=new Array();
for (i=0; i<10; i++){
    item[i] = $('ul').find('.list-item-'+i).text();
}   

答案 3 :(得分:0)

Chango的答案是完美的。

但是,如果你真的需要将它们存储为item1,item2,......请尝试这样做:

var tempArr=[];
var obj={};
for(i=0; i<10;i++) {
  tempArr.push('item'+i);
}
for(i=0; i<10; i++) {
  obj[tempArr[i]]=$('ul').find('.list-item-'+i).text();
}

现在您可以将item1作为obj.item1等访问

答案 4 :(得分:0)

根本不需要进行显式循环。

​var items = $("ul li[id^='list-item-']").map(function(i,o){
    return $(o).text();
}).get();​​​​​​​​​​​​​​​​​​​​​​​​​​

小提琴:http://jsfiddle.net/jonathansampson/vM5Hy/

答案 5 :(得分:-2)

我认为如果你想使用像item1或item2这样的变量,你的代码应该是:

var items = [];
for (var i=0; i<10; i++){
    items.push($('ul').find('.list-item-'+i).text());
}

但在你的情况下,我认为阵列应该更好......

Mimiz