我的輸出平均成績無法輸出。但是把對應語句放進for循環(huán)就能輸出,請問是為什么?
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>系好安全帶,準備啟航</title>
<script type="text/javascript">
var date = new Date();
var weekday=["星期一","星期二","星期三","星期四","星期五","星期六","星期天"]
?//通過javascript的日期對象來得到當前的日期,并輸出。
?document.write(date.getFullYear()+"年"
? ? ? ? ? ? ? ? ? +date.getMonth()+"月"
? ? ? ? ? ? ? ? ? +date.getDate()+"日"
? ? ? ? ? ? ? ? ? +" "+weekday[date.getDay()-1]);
?//成績是一長竄的字符串不好處理,找規(guī)律后分割放到數組里更好操作哦
?var scoreStr = "小明:87;小花:81;小紅:97;小天:76;小張:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
?var student=scoreStr.split(";");
?var score = new Array();
?var sum=0;
?for(var i=0;i<scoreStr.length;++i){
?score[i]=student[i].substr(3,2);
?sum+=parseInt(score[i]);
?}
?document.write(parseInt(sum)+"<br>");
?//從數組中將成績撮出來,然后求和取整,并輸出。
?
</script>
</head>
<body>
</body>
</html>
2015-12-18
for 這里我給你重新寫了一下,有下面三個錯誤
i<student.length 你寫成了?i<scoreStr.length;
score[i] = student[i].substring(3,6); 你寫成了?score[i]=student[i].substr(3,2);還有就是substring() 方法用于提取字符串中介于兩個指定下標之間的字符。這個你其實直接可以寫成這樣的?score[i] = student[i].split(':')[1];還有這塊沒有必要用數組存儲,你直接定義一個var score就行了
document.write(sum/student.length); 輸出平均值