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

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

運行不出來,為什么呀?

<!DOCTYPE? HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>流程控制語句</title>
<script type="text/javascript">
var infos=[??? ('小A','女',21,'大一'),
??????????????????????? ('小B','男',23,'大三'),
??????????????????????? ('小C','男',24,'大四'),
??????????????????????? ('小D','女',21,'大一'),
??????????????????????? ('小E','女',22,'大四'),
??????????????????????? ('小F','男',21,'大一'),
??????????????????????? ('小G','女',22,'大二'),
??????????????????????? ('小H','女',20,'大三'),
??????????????????????? ('小I','女',20,'大一'),
??????????????????????? ('小J','男',20,'大三')];
?//第一步把之前的數據寫成一個數組的形式,定義變量為 infos
?var arr=[];
?var n=0;
?for(var i=0;i<=infos.length;i++){
??? if(infos[i][3]=="大一"){
??????? arr[n]=infos[i];
??????? document.write(arr[n]+"br/");
??????? n=n+1;
??? }
?}
?document.write("大一人數:"+arr.length+"br/");
?
?//第一次篩選,找出都是大一的信息
?for(var n=0;n<arr.length;n++){
??? if(arr[n][1]=='女'){
??????? document.write("arr[n][0]"+"br/");
??? }
?}
?
?//第二次篩選,找出都是女生的信息
?
?
?
</script>
</head>
<body>
</body>
</html>

正在回答

1 回答

1、二維數組里的內容應該用[]包括,而不是()

2、換行要寫為<br/>,不要把<>忘了

3、第一個for循環,判定條件改為i<infos.length,不能等于,等于的話數組越界。

<!DOCTYPE??HTML>
<html?>
<head>
<meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"?/>
<title>流程控制語句</title><script?type="text/javascript">
var?infos=[?['小A','女',21,'大一'],?????????????
????????????['小B','男',23,'大三'],????????????
????????????['小C','男',24,'大四'],?????????????
????????????['小D','女',21,'大一'],???????????
????????????['小E','女',22,'大四'],?????????????
????????????['小F','男',21,'大一'],????????????
????????????['小G','女',22,'大二'],????????????
????????????['小H','女',20,'大三'],???????????
????????????['小I','女',20,'大一'],????????????
????????????['小J','男',20,'大三']];????
????//第一步把之前的數據寫成一個數組的形式,定義變量為?
????infos?var?arr=[];?
????var?n=0;??
????//第一次篩選,找出都是大一的信息?????
????for(var?i=0;i<infos.length;i++){????
????????if(infos[i][3]=="大一"){????????
????????????arr[n]=infos[i];????????
????????????document.write(arr[n]+"<br/>");???????
?????????????n=n+1;???
?????????}?
????}??
????document.write("大一人數:"+arr.length+"<br/>");?
????for(var?n=0;n<arr.length;n++){????
????????if(arr[n][1]=='女'){????????
??????????document.write(arr[n][0]+"<br/>");????
????????}??
????}
????</script>
????</head>
????<body>
????</body>
??</html>


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

T松子

17行的infos差行了,你懂得~~~
2018-08-24 回復 有任何疑惑可以回復我~
#2

qq_欣然_1 提問者

回復 T松子我改了,運行出來了,謝謝啦!
2018-08-24 回復 有任何疑惑可以回復我~
#3

T松子 回復 qq_欣然_1 提問者

沒事,一起學習@_@互相幫忙
2018-08-24 回復 有任何疑惑可以回復我~
#4

PengGuo

為什么把你的代碼里面的"n"全部換成“i”后,輸出的結果就只胡“小A”了? 在第一次篩選時,不能把arr[n]=infos[i]這一句直接寫成arr[i]=infos[i]嗎?
2018-10-22 回復 有任何疑惑可以回復我~
#5

PengGuo

你好,你在第一次篩選時,在聲明變量 var=arr[]時,這里要聲明一個數組變量,為什么一定要加一個“[]”,不可以只寫“var=arr”嗎?
2018-10-22 回復 有任何疑惑可以回復我~
#6

T松子 回復 PengGuo

infos是一個二維數組,聲明“var arr=[];”數組(由于保存的也是一維數組,所以arr是一個二維數組),是用來保存Infos里的符合條件的元素(符合條件的不止一個);如果聲明為var arr;它是一個變量,只能保存一個數據,不能保存所有的內容。還有上一個問題,如果把n全部換成i,那么在篩選的時候,n就不是從0依次遞增了,會因為篩選的原因不規則遞增,讀取的時候會很麻煩,你可以把所有n換成除i以外的其他變量,比如j,k,只要不是用于循環的i即可。如果哪一句還有點不明白,再問就行啦~
2018-10-23 回復 有任何疑惑可以回復我~
#7

PengGuo

非常感謝,第一次學習這個。
2018-10-23 回復 有任何疑惑可以回復我~
#8

PengGuo 回復 T松子

之前我以為把n換成i 后,重新的數組會重新把標號編寫成:0、1、2、3、4、5.....確實,如果新的數組的標號還是之前數組的標號的話 那新數組標號就是不規律的了,后面如果再引用的話就相當不方便
2018-10-23 回復 有任何疑惑可以回復我~
查看5條回復

舉報

0/150
提交
取消

運行不出來,為什么呀?

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

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

幫助反饋 APP下載

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

公眾號

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