十年以后听你唱十年
2016-06-11 11:18
var myarr=new Array(); //先声明一维
for(var i=0;i<2;i++){ //一维长度为2
myarr[i]=new Array(); //再声明二维
for(var j=0;j<3;j++){ //二维长度为3
myarr[i][j]=i+j; // 赋值,每个数组元素的值为i+j
}
}
问题:一维变量和二维变量怎么是同一个名字myarr?
可以这么去理解,二维数组是数组的数组,二维数组myarr本质还是数组,由一系列元素(myarr[0]、myarr[1]...)组成,只是每个元素(比如myarr[0])是个一维数组,访问里面的第一个元素用myarr[0][0]
var myarray=new Array() 一维数组定义
myarray[i]=new Array() 二维数组定义
为何二维数组的定义有[i]?不知道这个表示什么意思?
别搞混了 myarr[i]是myarr数组中的一个元素 只是把这个元素变成一个数组
myarr是一个数组的名字,就比如是一个小区的名字,一维数组就是这个小区的A,B,C……区;二维数组就比如是A或B或C或……的第几栋楼,三维数组就好比是某栋楼的第几单元……依此类推,可以四维、五维……
先声明的一个一维数组myarr,然后把myarr的变量声明为数组而不是普通的变量,这样myarr就是二维数组了,就可以通过myarr[i][j]来访问了。为什么名字相同?因为就是一个数组啊
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题