JavaScript的二维数组 [英] Javascript two dimensional arrays
问题描述
我已经声明了一个二维数组,像这样:
A = [[]]
然而,当我尝试使用0以外的第一个维度指标,得到第二层面的价值,这是行不通的:
A [1] [0] =foo的//返回错误
有没有解决这个更好的方式比手动定义每次你需要为一个数组,即指数:
A [1] = [];
一个[2] = [];
一个[3] = [];
//等等
N维数组不存在JavaScript的 - 你必须只是让数组包含作为元素的数组
你得到一个错误,因为 A = [[]];
声明是有一个元素,这恰好也是一个数组数组。因此, A [0]
是内部数组,但 A [1]
不存在,因为你从来没有宣布它。正确地宣布二维阵列的最简单的方法是使用一个循环
VAR outerArray = [];
VAR numInternalArrays = 5;
对于(VAR I = 0; I< numInternalArrays;我++){
outerArray [I] = [];
}
I have declared a two-dimensional array, like so:
a = [[]]
However, when I try to give a second dimension value using a first dimension index other than 0, it doesn't work:
a[1][0] = "foo" //returns error
Is there a better way around this than manually defining every index you need as an array, i.e.:
a[1] = [];
a[2] = [];
a[3] = [];
//et cetera
N-Dimensional arrays do not exist in javascript - you have to just make arrays containing arrays as elements.
You're getting an error because a = [[]];
declares an array with one element, which happens to also be an array. Therefore a[0]
is the internal array, but a[1]
does not exist because you never declared it. The easiest way to properly declare a "two dimensional array" would be to use a loop:
var outerArray = [];
var numInternalArrays = 5;
for (var i = 0; i < numInternalArrays; i++) {
outerArray[i] = [];
}
这篇关于JavaScript的二维数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!