0

無数の次元を持つ配列の配列を構築したいと考えています。

どうすればよいですか:

  • 親配列の次元数を取得する
  • 最も外側の寸法要素を循環

これはばかげた質問かもしれませんが、私はJavaScriptの初心者なので、私を導いてください。

[編集]

私が取り組んでいるプロジェクトは、(特定のアプリケーションで使用される) html コードを生成するものです。ユーザーに行と列を入力するように求めます(列は順序に従って互いにネストされています)。

例:

Rows = a,b,c
col1 = q,w,e
col2 = 1,2,3

It would generate a table like this:
| rows |  q  |  w  |  e  |
|      |1|2|3|1|2|3|1|2|3|
|  a   |x|x|x|x|x|x|x|x|x|
|  b   |x|x|x|x|x|x|x|x|x|
|  c   |x|x|x|x|x|x|x|x|x|

ただし、いくつかのカスタム関数が要求されているため (セルの結合、列の非表示など)、列を保持するネストされた配列を作成する予定です。

4

2 に答える 2

0

Java スクリプト配列は多次元ではありません。ちなみに、配列の配列を作成して同じことを実現できます。

var xArrays = [[],[],[]];

多次元ではありませんが、いつでもサイズを変更できます。

xArrays.push([]);  xArrays[xArrays.length]=[]; //adding an array
xArrays.pop(); //removing an array

配列をトラバースすると、

xArray.forEach(
        function(xTemp){ 
            alert(xTemp.length); //You can do your inner level iterations here. 
                      });
于 2013-04-03T21:43:25.787 に答える
0

あなたの質問を正しく読んだら、正方形ではない配列の配列を反復しようとしています。外側の配列の各インデックスで .length プロパティを取得して、内側の次元を取得できます。

var one = [1];
var two = [1,1];
var three = [1,1,1];
var four = [1,1,1,1];
var five = [1,1,1,1,1];

var container = [one,two,three,four,five];
$("#outer").html(container.length);

for(var i =0; i < container.length; i++){
     $("#inner").append(container[i].length + ',');   
}

http://jsfiddle.net/ZPwrn/ - 実行例

于 2013-04-03T21:14:07.800 に答える