請問下按照下面代碼寫為什么會出錯啊?
<!DOCTYPE??HTML> <html?> <head> <meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"?/> <title>流程控制語句</title> <script?type="text/javascript"> ?//第一步把之前的數(shù)據(jù)寫成一個數(shù)組的形式,定義變量為?infos ?var?infos=[["小A","女",21,"大一"],["小B","男",23,"大三"],["小C","男",24,"大四"],["小D","女",21,"大一"], ????????????["小E","女",22,"大四"],["小F","男",21,"大一"],["小G","女",22,"大二"],["小H","女",20,"大三"], ????????????["小I","女",20,"大一"],["小J","男",20,"大三"]]; ? ?//第一次篩選,找出都是大一的信息 ?var?infos2=new?Array(5); ?var?a=0; ?var?b=0; ??for(var?i=0;i<10;i++){ ?????? ??????if(infos[i][3]=="大一"){ ?????????? ??????????infos2[a]=infos[i]; ??????????a++; ??????} ??} ?//第二次篩選,找出都是女生的信息 ??var?infos3=new?Array(3); ??for(var?j=0;j<infos2.length;j++){ ?????? ??????if(infos2[j][1]=="女"){ ??????????infos3[b]=infos2[j]; ??????????b++; ?????????? ??????} ??} ??document.write(infos3); ?? </script> </head> <body> </body> </html>
我試了下如果最后一個if語句中換成document.write(infos2[j])的話是對的,不知道為什么按上面所寫的會出錯;
2017-08-29
有點雜耍了。。。其實很多不用寫的。。。你這出現(xiàn)的問題是數(shù)組infos2給多了個位置,在for循環(huán)的時候,當他循環(huán)到空值時會誤以為你沒有定義。。。還有哥們,你是學JAVA過來學JS的吧?不然一般人不會先定義數(shù)組的大小。。。
2017-09-08
infos[i][3]=="大一 "中的3什么意思啊
2017-09-03
一定要清楚你寫的每一句代碼,計算機都是在怎么讀取和處理這句代碼的,而不是你覺得該怎么處理的。當然這需要很長時間的積累;
還要多考慮程序的適用性和嚴謹性,要多方面的考慮程序是否能夠更方便地使用。
比如你這個程序,假設是一個成千上萬組的數(shù)據(jù),那么該用什么樣的思想來處理呢?難道還在程序里填寫對應的數(shù)據(jù)?那真是難以想象。
2017-08-27
n你怎么復雜花了