为了账号安全,请及时绑定邮箱和手机立即绑定

大佬们,为什么第一次筛选后的数组长度为0啊,这题到底怎么写?

<!DOCTYPE  HTML>
<html >
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>流程控制语句</title>
    <script type="text/javascript">

        //第一步把之前的数据写成一个数组的形式,定义变量为 infos
         var infos=[
                 ['小A','女',21,'大一'], ['小B','男',23,'大三'],
                 ['小C','男',24,'大四'], ['小D','女',21,'大一'],
                 ['小E','女',22,'大四'], ['小F','男',21,'大一'],
                 ['小G','女',22,'大二'], ['小H','女',20,'大三'],
                 ['小I','女',20,'大一'], ['小J','男',20,'大三']
             ];

        //第一次筛选,找出都是大一的信息
         for(let i=0;i<10;i++)
         {
             var info=new Array();
             if(infos[i][3] ==  "大一")
             {
                 for(var k=0;k<4;k++)
                 {
                     info[k]=new Array();
                 }
                 info[k]=infos[i];
                 document.write(info[k]+info.length+"<br/>");
             }
         }
        document.write(info.length);
        //第二次筛选,找出都是女生的信息
       /*for(let k=0;k<4;k++)
       {
           for(let j=0;j<4;j++)
           {
               if(info[k][1] == "女")
               {
                   document.write(info[k]+"<br/>");
               }
           }
       }*/

    </script>
</head>
<body>
</body>
</html>

https://img1.sycdn.imooc.com//5cd2a52200010a3701980136.jpg

正在回答

2 回答

因为你第一个循环体内有创建数组语句,也就是说每一次循环都要创建数组info,这会覆盖上一次循环所创建的数组。

1 回复 有任何疑惑可以回复我~
#1

慕神2205315 提问者

谢谢大佬
2019-05-09 回复 有任何疑惑可以回复我~

<!DOCTYPE  HTML>

<html >

<head>

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

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

<script type="text/javascript">


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

 var infos = [

     ['小A','女',21,'大一'],['小B','男',23,'大三'],

     ['小C','男',24,'大四'],['小D','女',21,'大一'],

     ['小E','女',22,'大四'],['小F','男',21,'大一'],

     ['小G','女',22,'大二'],['小H','女',20,'大三'],

     ['小I','女',20,'大一'],['小J','男',20,'大三']

 ]

 

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

 document.write("第一次筛选,找出都是大一的信息"+"<br/>");

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

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

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

             document.write(infos[i]+"<br/>");

         }

     }

 }

  

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

 document.write("第二次筛选,找出都是女生的信息"+"<br/>");

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

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

         if(infos[i][j]=='女'){

             document.write(infos[i]+"<br/>");

         }

     }

 }

 

  

</script>

</head>

<body>

</body>

</html>


0 回复 有任何疑惑可以回复我~
#1

慕神2205315 提问者

谢谢大佬
2019-05-09 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

大佬们,为什么第一次筛选后的数组长度为0啊,这题到底怎么写?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号