suBJuly
2017-04-18 12:36
<!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();
for(var i=0;i++;i<3){
var myarr[i]=new Array();
for(var j=0;j++;j<5){
myarr[i][j]=i*j;
}
}
</script>
</head>
<body>
document.write(myarr[2][5]);
</body>
</html>
<!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(); for(var i=0;i<3;i++){ myarr[i]=new Array(); for(var j=0;j<5;j++){ myarr[i][j]=i*j; document.write(myarr); } } </script> </head> <body> </body> </html>
实际操作后发现,mar人[i]不用var声明就ok了,myarr[i]这个是已经存在的,不用var声明了
你的一重循环也就是第一个数字是在0到2之前,但是不包括2,同理第2重循环第 2个数字在0到5之前,不包括5,也就是说-myarr【(只能是0,1,2)】【只能是0,1,2,3,4】,而你输出myarr[2][5],很显然数组里面找不到
数组下标越界 myarr【2】【4】
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题