JavaScript的二维数组 [英] Javascript two dimensional arrays

查看:197
本文介绍了JavaScript的二维数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经声明了一个二维数组,像这样:

  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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆