问答详情
源自:4-10 编程练习

帮我看看是哪里出了问题,运行不出内容,实在找不到错在哪了?

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>流程控制语句</title>

<script type="text/javascript">


 //第一步把之前的数据写成一个数组的形式,定义变量为 infos

 var infos=new Array();

     infos=[

       ["小A","女",21,"大一"],

       ["小B","男",23,"大三"],

       ["小C","男",24,"大四"],

       ["小D","女",21,"大一"],

       ["小E","女",22,"大四"],

       ["小F","男",21,"大一"],

       ["小G","女",22,"大二"],

       ["小H","女",20,"大三"],

       ["小I","女",20,"大一"],

       ["小J","男",20,"大三"],

       ];

       var info=new Array();

       var num= 0;

 //第一次筛选,找出都是大一的信息

 //document.write("第一部分:"+"<br/>");

 for(var i=0;i<=infos.length;i++){

     for(var j=0;j<=infos[i].length;j++){

         if(infos[i][j]=="大一"){

            info [num]=infos [i];

            num++;

         }

     }

     }

 //第二次筛选,找出都是女生的信息

 // document.write("第二部分:"+"<br/>");

 for(var i=0;i<=info.length;i++){

     for(var j=0;j<=info[i].length;j++){

         if(info[i][j]=="女"){

            document.write(info[i][0]);

         }

     }

 }

  

</script>

</head>

<body>

</body>

</html>


提问者:qq_慕粉909474 2019-01-03 17:43

个回答

  • qianhujiang
    2019-01-08 13:39:27

    数组越界。循环的时候下标是从0开始的,如果是一个长度是5的数组,那么最后一个的下标就是4。你用<=,循环到最后一个的时候,下标就是5,所以错误了。

  • qianhujiang
    2019-01-08 12:40:43

    for循环里的<=改成<,你会发现正确了。

  • 疯狂的狗蛋
    2019-01-03 21:14:54

    同问,写的一样,运行不出来,复制别人的代码就可以运行