關于第二次篩選
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]"這四個數據嗎?怎么通過它來判斷這四個是否是女生?
2017-02-01
第一次篩選的時候,就是將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]方式輸出。
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 />");
}
}