关于第二次筛选问题

var st=[

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

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

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

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

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

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

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

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

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

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

     ]

 var st1=new Array();

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

 

 

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

     

    if(st[i][3]=="大一"){

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

     st1[n]=st[i];

     n++;}

    

 }

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

 

  

for(n=0;n<st1.length;n++){

     

    if(st1[n][1]=="女"){

    document.write(st1[n][0]+"<br/>");

     }

    

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

在上例中,st1[n]不是一个一维数组吗,它里面只有"[小A]","[小D]","[小F]","[小I]"这四个数据吗?怎么通过它来判断这四个是否是女生?

朝闻道夕
浏览 1648回答 3
3回答

_dark

写入一维数组st1的是二维数组st的第一维,也就是其储存信息的地址,通过地址可以访问到元素的其他信息

慕粉void

你的代码写错了 //第一步把之前的数据写成一个数组的形式,定义变量为 infos  var infos = [['小A', '女', 21, '大一'],               ['小B', '男', 23, '大三'],               ['小C', '男', 24, '大四'],               ['小D', '女', 21, '大一'],               ['小E', '女', 22, '大四'],               ['小F', '男', 21, '大一'],               ['小G', '女', 22, '大二'],               ['小H', '女', 20, '大三'],               ['小I', '女', 20, '大一'],               ['小J', '男', 20, '大三']];    //第一次筛选,找出都是大一的信息  for (var i = 0; i < 10; i++) {         if (infos[i][3] == '大一') {  //第二次筛选,找出都是女生的信息             if (infos[i][1] == '女') {                 document.write(infos[i][0]);             }         }  }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java
JavaScript