为什么第二次筛选不成功?

来源:4-10 编程练习

敬亭山仁波切

2016-03-05 20: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,'大三']
 ]
 
 
 //第一次筛选,找出都是大一的信息
 document.write("第一次筛选:"+"<br/>"+"<br/>");
 var len=infos.length;
 var info=new Array();
 var k=0;
 for(i=0 ;i<=len ;i++){
     if(infos[i][3]=="大一"){
         document.write(infos[i]+"<br/>"+"<br/>");
        info[k]=infos[i];
    }  
 }

  
 //第二次筛选,找出都是女生的信息
document.write("<br/>第二次筛选:<br />")
 for(var j= 0;j < k;j++){
     if(info[j][1] == "女"){
         document.write(info[j]+"<br/>");
     }
 }
 
 
  
</script>
</head>
<body>
</body>
</html>


写回答 关注

1回答

  • qq_今日事今日毕_0
    2016-03-05 20:38:20
    已采纳
    <!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,'大三']
     ]
      
      
     //第一次筛选,找出都是大一的信息
     document.write("第一次筛选:"+"<br/>"+"<br/>");
     var len=infos.length;
     var info=new Array();
     var k=0;
     for(i=0 ;i<len ;i++){
         if(infos[i][3]=='大一'){
             document.write(infos[i]+"<br/>"+"<br/>");
            info[k++]=infos[i];
        }  
     }
     
       
     //第二次筛选,找出都是女生的信息
    document.write("<br/>第二次筛选:<br />")
     for(var j= 0;j < k;j++){
         if(info[j][1] == "女"){
             document.write(info[j]+"<br/>");
         }
     }
      
      
       
    </script>
    </head>
    <body>
    </body>
    </html>

    哥们,你这里有两个错,一个是第一个for循环中<len就行了,不要=号,因为你多循环了依次。第二个错还是这个for循环你应该写成info[k++]=infos[i];才对

    qq_今日事... 回复敬亭山仁波切

    不用谢,加油前端er

    2016-03-05 22:49:37

    共 2 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468190 学习 · 21891 问题

查看课程

相似问题