最后輸出人數的時候輸出不了,輸出代碼放在別的位置都能輸出啊
<!DOCTYPE? HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>流程控制語句</title>
<script type="text/javascript">
// 定義數組infos
? ? var infos =[['小A','女',21,'大一'], ['小B','男',23,'大三'],['小C','男',24,'大四'],? ['小D','女',21,'大一'],['小E','女',22,'大四'],? ['小F','男',21,'大一'],['小G','女',22,'大二'],? ['小H','女',20,'大三'],['小I','女',20,'大一'],? ['小J','男',20,'大三']];
// 定義統計用的變量
? ? var n=0;
// 輸出標題
? ? document.write("大一的女同學有:<br>")
// for循環確認循環次數
? ? for(i=0;i<=infos.length;i++){
// 判斷是不是大一的同學
? ? ? ? if(infos[i][3]=="大一"){
// 判斷是不是女生
? ? ? ? ? ? if(infos[i][1]=="女"){
// 是大一女生的話統計變量加1,并輸出她的名字和年齡
? ? ? ? ? ? ? ? n=n+1;
? ? ? ? ? ? ? ? document.write(infos[i][0]+"今年"+infos[i][2]+"歲。<br>")
? ? ? ? ? ? }
? ? ? ? }
? ? }
// 最后在輸出統計的人數
? ? document.write("大一的女生共有"+n+"人。");
</script>
</head>
<body>
</body>
</html>
2018-05-30
同學,你好,你把?for(i=0;i<=infos.length;i++)改成?for(i=0;i<infos.length;i++)。
因為數組的長度為infos.length=10,但是不能執行i=10;最后一次i=10的循環沒有執行,所以
document.write("大一的女生共有"+n+"人。");這行代碼就不會執行。
如果你覺得我的回答滿意,請設為“采納回答”,謝謝!
2018-05-21
你的n是局部變量,它只在for循環的方法體中有效果