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 回答