JavaScript只支持一维数组,但其作为一门弱类型语言,数据类型相对灵活,如果使保存在数组中的元素是数组的话,就可以轻松创建多维数组。
二维数组
在C语言中我们已经熟悉二维数组的概念,二维数组类似一种由行和列构成的数据表格。
创建二维数组
在JavaScript中创建二维数组,按照我们刚才的想法需要先创建一个数组,然后让数组的每个元素也是一个数组。最起码,我们需要知道二维数组要包含多少行,有了这个信息,就可以创建一个n行1列的二维数组了:1
2
3
4
5var array = [];
var rows = 5;
for (var i = 0; i < rows; i++) {
array[i] = [];
}
这样做的弊端在于数组中的每一个元素都是undefined,这是不规范的。为此JavaScript的大宗师Douglas Crockford通过扩展JavaScript数组对象,为其增加了一个新方法来创建二维数组并初始化数组元素,该方法根据传入的参数,设定了数组的行数、列数和初始值。