js是支持多维数组的,但是没有构造函数可以直接生成多维数组。但是可以使用虚拟数组的方法实现,即数组的元素也是数组,以下介绍两种方式来创建多维数组。
分别使用数组的[]符号和Array对象的对象特性,主要功能和方法如下。
(1)用两个封闭的中括号[]创建数组,其中的元素也可以是数组。
(2)用js对象的特有属性,可以像创建对象一样创建数组。如果数组对象的元素又是一个数组对象的话,那么这样的数组对象就是多维的。
代码实现过程如下:
function a1(arr){ for(var i=0;i<arr.length;i++){ for(var j=0;j<arr[i].length;j++){ document.writeln(arr[i][j]); } document.writeln("<br/>"); } } function a2(){ var h= 3,v=4; var arr=new Array(v); for(var i=0;i<arr.length;i++){ arr[i]=new Array(h); for(var j=0;j<arr[i].length;j++){ arr[i][j]=i*j;//为数组赋值 } } return arr; } var arr1= [[1,2,3],["11","s1","s2"]]; var arr2=a2(); a1(arr1); a1(arr2);输出结果为: 1 2 3
11 s1 s2
0 0 0
0 1 2
0 2 4
0 3 6