0

以下のコードは、すべてvarに数値を追加する必要があることを示しているため、2つの変数をループで結合しようとしていますが、動作させることができません。これはスクリプトの一部にすぎません。ご覧のとおり、、、などにvar itemなります。item1item2item3

// コード

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

6 に答える 6

6

私はarryを使用します:

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

それを見ることも重要です

var item + ' ' + i

変数の不正な宣言です。

于 2012-06-06T17:27:02.140 に答える
0

ループの外側で宣言されている配列の要素に割り当てます。for

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

于 2012-06-06T17:27:10.987 に答える
0

配列を使用する必要があります。

var item=new Array();
for (i=0; i<10; i++){
    item[i] = $('ul').find('.list-item-'+i).text();
}   
于 2012-06-06T17:29:31.503 に答える
0

上記のチャンゴの答えは完璧です。

ただし、それらを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などとしてアクセスできます。

于 2012-06-06T17:32:27.340 に答える
0

明示的なループを行う必要はまったくありません。

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

フィドル: http: //jsfiddle.net/jonathansampson/vM5Hy/

于 2012-06-06T17:33:54.167 に答える
-2

item1やitem2のような変数を使用したい場合、コードは次のようになります。

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

しかし、あなたの場合、私は配列がより良いはずだと思います...

ミミズ

于 2012-06-06T17:31:07.050 に答える