初めて自分の家と他人の家が違う、と意識した時

JavaScript で配列の終わりまでループを回すには
どうしたらいいのでしょう?

perl であれば

foreach (@test) {

 処理

}

ですよね。。。test.length; で要素数を取得する以外で
方法はないでしょうか。
new Array を使って、2次元配列(のようなもの) を
作って格納してしまったので、test[0][*], test[1][*] それぞれの要素数を調べたいのです。
現状だと test[0][*], test[1][*] 2つの合計値が
返ってしまいます。

A 回答 (3件)

2次元配列はどのように作ってますか?


JavaScript で2次、3次などの配列を作る場合、少し変わった作り方をします。

まず、はじめに
var Table = new Array();
で配列を作成します。
2次元配列にするためには

var Table = new Array();
Table[0] = new Array();
Table[1] = new Array();
   ・
   ・
   ・
Table[10] = new Array();

これだと面倒なので、

for (cnt = 0; cnt <= 10; cnt++)
Table[cnt] = new Array();

のように作成します。
これで

Table.length;

を使うと 11 になります。

さらに、その2次元の要素は
Table[0].length;
Table[1].length;
などのようにして取得しますが、このようなことでしょうか?
    • good
    • 0
この回答へのお礼

ありがとうございます。
おっしゃるようにして実現できました。
JavaScript の配列の扱いについて少々とまどって
いたようです。回答を大いに参考にさせて
いただきます。

お礼日時:2002/06/15 15:56

count = new Array(2)


count[0] = new Array(3)
count[1] = new Array(4)

for(i=0 ; i<count.lenght;i++){
document.write(count[i].length)
}

ではどうでしょう。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
JavaScript の配列の扱いについて少し間違っていた
認識をしていたようです。回答を大いに参考に
させていただきます。

お礼日時:2002/06/15 15:59

count = new Array(2);


count[0] = count[1] = 0;

for( i=0; i<2; i++ ){
j=0;//これはいらないかも
for( j in test[i] ){
count[i]++;
}
}

確認はしてませんが、これで、count配列にそれぞれの要素数が格納されるような気がします。
念のため、参考リンクも見ておいてください。

参考URL:http://tohoho.wakusei.ne.jp/js/statement.htm#stFor
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
JavaScript の配列の扱いについて少々とまどって
いたようです。URLと共に大いに参考にさせて
いただきます。

お礼日時:2002/06/15 15:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報