亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

關于第四章編程練習答案的疑問

??var?arr1?=?[];?//新建一個數組的原因是不和infos重合嗎?
???var?n?=?0;??//為什么要聲明一個n變量,并且賦值為0?
???for(var?i=0;i<infos.length;i++){?
????????if(?infos[i][3]?==?"大一"?){??//infos[i][3]的含義是不是指“數組索引號i與3”???
???????????arr1[n]?=?infos[i];
????????????document.write(arr1[n]+"<br/>");
???????????n=n+1;
????????????
????????}??
???}

用注釋寫在語言里

正在回答

3 回答

全部js代碼與注釋如下

//?第一步把之前的數據寫成一個數組的形式,定義變量為?infos
?var?infos?=?[?['小A','女',21,'大一'],??['小B','男',23,'大三'],

????['小C','男',24,'大四'],??['小D','女',21,'大一'],

???['小E','女',22,'大四'],?['小F','男',21,'大一'],

????['小G','女',22,'大二'],??['小H','女',20,'大三'],

????['小I','女',20,'大一'],??['小J','男',20,'大三']];
???
?var?arr?=?[];?//?定義一個數組

//?第一次篩選,找出都是大一的信息(數組arr1)
??for(var?i=0;i<infos.length;i++){?
???????if(?infos[i][3]?==?"大一"?){???????????//?篩選所有大一學生信息?
??????????arr.push(infos[i]);?????????????????//?將其置于新數組??????????????
???????}??
??}
?//?第二次篩選,找出都是女生的信息(并打印出來)
for(var?i=0;?i<arr.length;i++){
??if(arr[i][1]?==?'女'){????????????????????//?篩選新數組中的所有女生
????document.write(arr[i][0]+"<br/>");???????//?打印姓名
??}
}


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

infos[i][3] 是個二維數組, 你可以把它看作是個張Excel表格,其中i決定的是行,3則代表列,整個合起來指向一個單元格。需要注意的是在索引值默認都是從0開始的(這也是n的初始值為什么通常是0的原因),所以這里的3其實就是第4列。至于if中的條件,你需要分析觀察infos二維數組內容結構。

infos二維數組看成表,則表示一個10行4列的表,其中每列依次表示為:姓名,性別,年齡,年級。理解這些,你就可以很清晰的知道infos[i][3]指獲取年級。

若還不能理解,打開Excel表比劃比劃。不明白if 是你需要加強數組學習。有時候慢就是快……

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

大明猩L 提問者

昨天恰好學到二維數組的課程,可是對它的邏輯完全不理解。心里的確是急于求成了,慢慢來,會比較快一點。看來是攻城獅必備的好心態
2015-10-12 回復 有任何疑惑可以回復我~
#2

大明猩L 提問者

不過我學習的過程有疑問時不經過認真的思考就急于先找到答案,事后也不總結,溫習的時候也不太上心。也有很大的問題
2015-10-12 回復 有任何疑惑可以回復我~

if中的條件是指的什么意思呢

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

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468829    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

關于第四章編程練習答案的疑問

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號