關(guān)于第二次篩選
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; ? ?//第一步把之前的數(shù)據(jù)寫成一個(gè)數(shù)組的形式,定義變量為 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]不是一個(gè)一維數(shù)組嗎,它里面只有"[小A]","[小D]","[小F]","[小I]"這四個(gè)數(shù)據(jù)嗎?怎么通過(guò)它來(lái)判斷這四個(gè)是否是女生?
2017-02-01
第一次篩選的時(shí)候,就是將st[i]的值賦予了st1[n],st[i]的值里面就是最初定義的信息,女生是判斷條件,符合“女生”這個(gè)條件的,就開(kāi)始執(zhí)行將st[i]的值賦予了st1[n]。。
['小J','男',20,'大三'] 這里面是不是有四個(gè)數(shù)據(jù),每個(gè)數(shù)據(jù)分別對(duì)應(yīng)“0”“1”“2”“3” ,所以,你就會(huì)看到第二此篩選中有?if(st1[n][1]=="女") 這樣的判斷條件,按順序執(zhí)行[0][1],[1][1],[2][1],[3][1]。這些都是執(zhí)行過(guò)程中利用if的條件進(jìn)行判斷上面的四個(gè)數(shù)組數(shù)據(jù)是否符合,符合的話,就輸出姓名,姓名就是?通過(guò)這句document.write(st1[n][0]+"<br/>")中的st1[n][0]方式輸出。
2017-01-31
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 />");
}
}