Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在for循环中连接2个变量(javascript)_Javascript_Jquery_Loops - Fatal编程技术网

如何在for循环中连接2个变量(javascript)

如何在for循环中连接2个变量(javascript),javascript,jquery,loops,Javascript,Jquery,Loops,我试图在一个循环中组合两个变量,正如下面的代码所示,我需要为每个var添加一个数字,但我无法让它工作。这只是脚本的一部分。如您所见,var项应该变成item1、item2、item3等等 //代码 for (i=0; i<10; i++){ var item+' '+i = $('ul').find('.list-item-'+i).text(); } 对于(i=0;i我将使用arry: var items = [] for (var i=0; i<10; i

我试图在一个循环中组合两个变量,正如下面的代码所示,我需要为每个
var
添加一个数字,但我无法让它工作。这只是脚本的一部分。如您所见,
var项
应该变成
item1
item2
item3
等等

//代码

for (i=0; i<10; i++){
    var item+' '+i = $('ul').find('.list-item-'+i).text();
}       
对于(i=0;i我将使用arry:

var items = []
for (var i=0; i<10; i++){
    items[i] = $('ul').find('.list-item-'+i).text();
}
是变量的非法声明。

我将使用arry:

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

是变量的非法声明。

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


分配给在
for
循环之外声明的数组元素


您应该使用数组:

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

对于(i=0;i,应使用数组:

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

对于(i=0;i我认为如果您想使用像item1或item2这样的变量,您的代码应该是:

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

对于(vari=0;i我认为如果您想使用像item1或item2这样的变量,您的代码应该是:

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

对于(var i=0;i上述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();
}
var tempArr=[];
var obj={};

对于(i=0;i上述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();
}
var tempArr=[];
var obj={};

对于(i=0;i,根本不需要执行显式循环

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

Fiddle:

根本不需要执行显式循环

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

小提琴:

你在
i
上缺少了
var
你在
i
上缺少了
var
你的
i
@amnotiam正在制作小提琴;)我想,保留这两种解决方案。第一种解决方案的好处是你不需要拖尾
.toArray()
.get()
(并不是说它们是绝对的要求。)再加上
.text()
解决方案避免了创建多个jQuery对象。@amnotiam我在
.get
中添加了一个很好的度量值。我试图让答案尽可能简单和简洁。理解,尽管“两者”我指的是你的
.text(fn)
解决方案。我认为评论/编辑有点互相绊倒了。很抱歉造成混乱。:)不管怎样,这都是一个很好的解决方案。@amnotiam正在制作小提琴;)我想,保留两个解决方案。第一个解决方案的好处是,您不需要拖尾
.toArray()
.get()
(并非绝对要求)。加上
.text()
解决方案避免了创建多个jQuery对象。@amnotiam我在
.get
中添加了一个很好的度量值。我试图让答案尽可能简单明了。理解,尽管“两者”我指的是你的
.text(fn)
解决方案。我认为评论/编辑有点互相绊倒。很抱歉造成混乱。:)不管怎样,这都是一个很好的解决方案。