索引不是从0开始的多维数组javascript
我需要填充多维数组,但不是从第0个元素填充,而是从第3个元素填充,但尝试填充时出错: 代码是:索引不是从0开始的多维数组javascript,javascript,Javascript,我需要填充多维数组,但不是从第0个元素填充,而是从第3个元素填充,但尝试填充时出错: 代码是: var matrix = [ [] ]; matrix[3][0] = 10; print(matrix[3][0]); 然后出现错误: 无法设置属性“0”的值:对象为null或未定义 但当从第0个元素执行相同操作时,它会起作用: var matrix = [ [] ]; matrix[0][0] = 10; print(matrix[0][0]); 此处没有错误-为什么?创建初始阵列时: var
var matrix = [ [] ];
matrix[3][0] = 10;
print(matrix[3][0]);
然后出现错误:
无法设置属性“0”的值:对象为null或未定义
但当从第0个元素执行相同操作时,它会起作用:
var matrix = [ [] ];
matrix[0][0] = 10;
print(matrix[0][0]);
此处没有错误-为什么?创建初始阵列时:
var matrix = [ [] ];
这里有一个数组,其中只有一个零元素数组。此时,矩阵[3]
未定义
根据问题的性质,可以通过多种方式初始化矩阵。这里有一个:
var matrix = [];
for (var i = 0; i < 10; ++i)
matrix[i] = [];
var矩阵=[];
对于(变量i=0;i<10;++i)
矩阵[i]=[];
现在您有了10行,每行都是空的。创建初始数组时:
var matrix = [ [] ];
这里有一个数组,其中只有一个零元素数组。此时,矩阵[3]
未定义
根据问题的性质,可以通过多种方式初始化矩阵。这里有一个:
var matrix = [];
for (var i = 0; i < 10; ++i)
matrix[i] = [];
var矩阵=[];
对于(变量i=0;i<10;++i)
矩阵[i]=[];
现在您有了10行,每行都是空的。创建初始数组时:
var matrix = [ [] ];
这里有一个数组,其中只有一个零元素数组。此时,矩阵[3]
未定义
根据问题的性质,可以通过多种方式初始化矩阵。这里有一个:
var matrix = [];
for (var i = 0; i < 10; ++i)
matrix[i] = [];
var矩阵=[];
对于(变量i=0;i<10;++i)
矩阵[i]=[];
现在您有了10行,每行都是空的。创建初始数组时:
var matrix = [ [] ];
这里有一个数组,其中只有一个零元素数组。此时,矩阵[3]
未定义
根据问题的性质,可以通过多种方式初始化矩阵。这里有一个:
var matrix = [];
for (var i = 0; i < 10; ++i)
matrix[i] = [];
var矩阵=[];
对于(变量i=0;i<10;++i)
矩阵[i]=[];
现在您有了10行,每一行都是空的。首先为什么要这样做?因为
矩阵[3]
不存在。您必须从第0个索引初始化数组。在初始化之前不能直接访问第三个索引。var matrix=[];矩阵[3]=[10];打印(矩阵[3][0])
JS没有多维数组,比如说,Pascal没有-JS有数组数组。首先为什么要这样做?因为matrix[3]
不存在。必须从第零个索引初始化数组。在初始化之前不能直接访问第三个索引。var matrix=[];矩阵[3]=[10];打印(矩阵[3][0])
JS没有多维数组,比如说,Pascal没有-JS有数组数组。首先为什么要这样做?因为matrix[3]
不存在。必须从第零个索引初始化数组。在初始化之前不能直接访问第三个索引。var matrix=[];矩阵[3]=[10];打印(矩阵[3][0])
JS没有多维数组,比如说,Pascal没有-JS有数组数组。首先为什么要这样做?因为matrix[3]
不存在。必须从第零个索引初始化数组。在初始化之前不能直接访问第三个索引。var matrix=[];矩阵[3]=[10];打印(矩阵[3][0])
JS没有多维数组,比如说,Pascal有-JS有数组数组。我还有一个问题。如果我需要使用多个矩阵数组元素,那么我必须在循环中或代码中的某个位置初始化所有矩阵数组元素,将每个矩阵数组元素初始化为数组?@user2968398我不确定我是否完全理解您的意思,但是是的-在将任何数组的元素用作数组之前,必须对其进行初始化。你不必提前做,你可以在尝试使用它之前检查,然后在那个时候初始化它。我还有一个问题。如果我需要使用多个矩阵数组元素,那么我必须在循环中或代码中的某个位置初始化所有矩阵数组元素,将每个矩阵数组元素初始化为数组?@user2968398我不确定我是否完全理解您的意思,但是是的-在将任何数组的元素用作数组之前,必须对其进行初始化。你不必提前做,你可以在尝试使用它之前检查,然后在那个时候初始化它。我还有一个问题。如果我需要使用多个矩阵数组元素,那么我必须在循环中或代码中的某个位置初始化所有矩阵数组元素,将每个矩阵数组元素初始化为数组?@user2968398我不确定我是否完全理解您的意思,但是是的-在将任何数组的元素用作数组之前,必须对其进行初始化。你不必提前做,你可以在尝试使用它之前检查,然后在那个时候初始化它。我还有一个问题。如果我需要使用多个矩阵数组元素,那么我必须在循环中或代码中的某个位置初始化所有矩阵数组元素,将每个矩阵数组元素初始化为数组?@user2968398我不确定我是否完全理解您的意思,但是是的-在将任何数组的元素用作数组之前,必须对其进行初始化。您不必提前完成,您可以在尝试使用它之前进行检查,并在那时初始化它。