<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>二维数组</title> <script type="text/javascript"> var myarr = new Array(); //1 for(var i=0;i<3;i++){ myarr[i] = new Array(); for(var j=0;j<6;j++){ myarr[i][j]=i*j; document.write(myarr[i][j]); } document.write("<br />"); } //2 for(var i=0;i<3;i++){ myarr[i] = new Array(); for(var j=0;j<6;j++){ document.write(myarr[i][j]); } document.write("<br />"); } </script> </head> <body> </body> </html>
结果
000000
012345
0246810
undefinedundefinedundefinedundefinedundefinedundefined
undefinedundefinedundefinedundefinedundefinedundefined
undefinedundefinedundefinedundefinedundefinedundefined
没有赋值
第二种写法 你又重新声明了一次数组 并且没有给他赋值 所以输出的会是undefined 如果把重新声明数组的那句“myarr[i] = new Array();”删掉就可以了。
第二种写法,你没有给 myarr[i][j] 赋值