慕工程9285452
2015-08-19 10:23
用按钮的方法就无法将数组显示,这是为什么呢?
document.write("myarr["+i+"]["+j+"]的值:"+myarr[i][j]+"<br>")
你输出的不是一个循环,只是请求i=2 j=3的数据。
这里的i,j 是局部变量,只在for循环里起作用,而你的function show()的i,j并没有声明和赋值。
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>二维数组</title> <script type="text/javascript"> function show() { var myarr=new Array(); for(var i=0;i<2;i++) { myarr[i]=new Array(); for(var j=0;j<3;j++) { myarr[i][j]=i*j; document.write("myarr["+i+"]["+j+"]的值:"+myarr[i][j]+"<br>"); } } } </script> </head> <body> <input type="button" value="点击显示二维数组" onclick="show()" </body> </html>
你的数组结构是myarr[Array[3],Array[3]].也就是说你i的最大值是1,而你请求的i=2.已经超出myarr的最大长度了
JavaScript进阶篇
468061 学习 · 21891 问题
相似问题