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

关于第二次筛选

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]"这四个数据吗?怎么通过它来判断这四个是否是女生?


正在回答

2 回答

第一次筛选的时候,就是将st[i]的值赋予了st1[n],st[i]的值里面就是最初定义的信息,女生是判断条件,符合“女生”这个条件的,就开始执行将st[i]的值赋予了st1[n]。。

['小J','男',20,'大三'] 这里面是不是有四个数据,每个数据分别对应“0”“1”“2”“3” ,所以,你就会看到第二此筛选中有 if(st1[n][1]=="女") 这样的判断条件,按顺序执行[0][1],[1][1],[2][1],[3][1]。这些都是执行过程中利用if的条件进行判断上面的四个数组数据是否符合,符合的话,就输出姓名,姓名就是 通过这句document.write(st1[n][0]+"<br/>")中的st1[n][0]方式输出。

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

var infos = [

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

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

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

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

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

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

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

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

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

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

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

];

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

if(infos[i][3] == "大一" && infos[i][1] == "女") {

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

}

}


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

朝闻道夕 提问者

谢谢了
2017-02-02 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468188    人
  • 解答问题       21891    个

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

进入课程

关于第二次筛选

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信