如何在 Java 脚本中使用来自 html 页面的文本声明初始化和使用二维数组

How to declare initialize and use 2 dimensional arrays in Java Script Using a text from html page

如何在javascript中声明、初始化和使用二维数组, 如果我写

var arr=new array(2,2)

声明一个2行2列的数组是否正确

如果我全局声明一个数组变量并在某些函数中分配 space 是否可以。 或者以下是否正确?

var arr;
//Some operations
function(){
arr[0][1]=8;
};

我不知道你怎么能把它标记为重复请阅读问题的描述而不是标题我想声明数组而不初始化它你明白我的意思吗......你把它指向数组的静态声明,我知道并且我在 10 年前从编程基础知识中学到了所以如果你不懂英语请去一些语言学校然后回来

该语言本身没有 "matrix" 结构。但是只要 "book" 所需的内存,您就可以毫无问题地创建它们。

假设你想创建一个 3x3 矩阵,首先你必须创建一个数组来存储对每个 row/column 的引用(当然取决于你的观点)。

function createMatrix(N, M) {
    var matrix = new Array(N); // Array with initial size of N, not fixed!

    for (var i = 0; i < N; ++i) {
        matrix[i] = new Array(M);
    }

    return matrix;
}

您通常不会那样使用 new Array。一个新的 Array 构造函数可能只有一个参数:长度。或者采用多个参数,这将是数组的值。

仅传递长度将生成一个包含参数中指定的未定义值的数组。不是很有趣。如果您创建这样的 js 类型数组,则可能是:var myArray = new Uint8Array(10)。但不是为了你想做的事。

传递值将产生与创建数组相同的结果,如下所示:

var myArray = [
    [ 1, 2, 3 ],
    [ 4, 5, 6 ]
];

然后,myArray[0][1] 将是 2

或相同:

var myArray = [];
myArray.push( [ 1, 2, 3 ] );
myArray.push( [ 4, 5, 6 ] );

它会产生相同的结果。

请记住,这不是 C++ 或 R。数组中的元素没有特定类型。它们可以是任何东西。一个函数,一个数字,一个对象......在这种情况下,另一个数组。这些不是真正的多维数组或矩阵。只是一些元素是数组的数组。

想嵌套多少就嵌套多少。