為什么不能直接arr[[i]=infos[i]
??var?arr?=?[];
???for(var?i=0;i<infos.length;i++){?
????????if(?infos[i][3]?==?"大一"?){??
???????????arr[i]?=?infos[i];
????????????document.write(arr[i]+"<br/>");
???????????
????????????
????????}??
???}
???這樣寫?等第二次篩選的時候?只能輸出一名女生?但實際上有三名?請問是為什么
2016-04-12
你試試這樣 我一開始也沒有弄懂為什么錯的 后來的依此輸出輸出數組的length發現的錯誤
var arr=[];
? ? for(var i=0;i<infos.length;i++){?
? ? ? ? if(infos[i][3]=='大一'){
? ? ? ? ? ?arr[i]=infos[i];
? ? ? ? ? ?if(arr[i][1]=="女"){ ? ? ? ??
? ? ? ? ? ? ? ?document.write(arr[i]+"<br/>");}
? ? ? ? }
? ? }?
當你在用第一個條件判斷并獲取的數據 就應該在當前的循環中再去判斷 如果像你那樣分開兩次判斷 它取到的length是不一樣的
2016-04-09
我試了你的代碼,是可以的啊,你怎么寫的???
??var?arr?=?[]; ???for(var?i=0;i<infos.length;i++){? ????????if(?infos[i][3]?==?"大一"?){?? ???????????arr[i]?=?infos[i]; ????????????document.write(arr[i]+"<br/>"); ???????????? ????????????? ????????}?? ???} ??????for(var?j=0;j<infos.length;j++){? ????????if(?infos[j][1]?==?"女"?){?? ???????????arr[j]?=?infos[j]; ????????????document.write(arr[j]+"<br/>"); ???????????? ????????????? ????????}?? ???}這樣你再試一下?