首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在javascript中创建空的二维数组?

如何在javascript中创建空的二维数组?
EN

Stack Overflow用户
提问于 2013-05-13 05:23:20
回答 10查看 104.2K关注 0票数 42

如何在Javascript中创建一个空的2D数组(不知道新数组中有多少行或多少列)?

如果它是一个简单的数组var newArray = new Array();,我可以指定任意多的元素。但是二维数组呢?是否可以在不指定行数和列数的情况下创建一个?之后如何访问元素(myArray[0][1]myArray[0,1])?

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2013-05-13 05:29:53

是的,您可以创建一个空数组,然后将数据推入其中。在JavaScript中不需要先定义长度。

查看

定义:

代码语言:javascript
复制
var arr = [[],[]];

推送数据:

代码语言:javascript
复制
arr[0][2] = 'Hi Mr.A';
arr[1][3] = 'Hi Mr.B';

读取数据:

代码语言:javascript
复制
alert(arr[0][2]);
alert(arr[1][3]);

更新

这也是Brady Dowling推荐的视频:

Create a 2D array

票数 32
EN

Stack Overflow用户

发布于 2016-07-06 05:28:46

您可以创建一个6 x 6的空数组,如下所示:

代码语言:javascript
复制
var myGrid = [...Array(6)].map(e => Array(6));

  • Array(6)生成一个长度为6且充满undefined值的数组。
  • 我们将该数组映射到另一个充满undefined值的数组。
  • 最终,我们得到了一个充满undefined位置的6x6网格。

如果需要使用默认值初始化网格:

代码语言:javascript
复制
var value = 'foo'; // by default
var myGrid = [...Array(6)].map(e => Array(6).fill(value));

现在你有了一个充满'foo'的6x6网格。

票数 82
EN

Stack Overflow用户

发布于 2013-05-13 05:29:40

Javascript中没有二维数组。

要实现二维数组的效果,可以使用数组的数组,也称为锯齿数组(因为内部数组可以有不同的长度)。

创建一个空的交错数组就像创建任何其他空数组一样:

代码语言:javascript
复制
var myArray = new Array();

您也可以使用空数组文字:

代码语言:javascript
复制
var myArray = [];

代码语言:javascript
复制
myArray.push([]);
myArray[0][0] = 'hello';

代码语言:javascript
复制
var myArray = [[],[],[]];

这为您提供了一个没有任何项的锯齿数组,但它是由三个内部数组准备的。

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16512182

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档