分割字符串得到個人數據的數組,提取子字符串轉化為整數,求出平均數。無法正確實現?
<html >
?<head>
? ?<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
? ?<title>系好安全帶,準備啟航</title>
? ?<script type="text/javascript">
? ? ?//通過javascript的日期對象來得到當前的日期,并輸出。
? ? ?var mydate = new Date();
? var myyear = mydate.getFullYear(); ?//年
? var mymonth = mydate.getMonth() + 1; ?//月
? var myday = mydate.getDate(); ?//日
? var myweek = mydate.getDay(); ?//星期
? ? ?var myweek2 = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
? document.write(myyear + "年" + mymonth + "月" + myday + "日 " + myweek2[myweek]);
?
? ? ?//成績是一長竄的字符串不好處理,找規律后分割放到數組里更好操作哦
? ? ?var scoreStr = "小明:87;小花:81;小紅:97;小天:76;小張:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
? ? ?var personInfo = scoreStr.split(";"); ? ?
? ? ?
? ? ?//從數組中將成績撮出來,然后求和取整,并輸出。
? ? ?for(var n = 0; n < personInfo.length; n++){
var personScore, sum=0;
personScore = parseInt(personInfo[n].substring(personInfo[n].(indexOf(":")+1)));
sum += personScore[n];
? }
? var aver = Math.round(sum/personInfo.length);
?document.write("--平均分是:" + aver);
? ?</script>
?</head>
?<body>
</body>
</html>
2016-02-01
<!DOCTYPE ?HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>系好安全帶,準備啟航</title>
<script type="text/javascript">
?var mydate=new Date();//通過javascript的日期對象來得到當前的日期,并輸出。
? var myyear=mydate.getFullYear();
? var mymonth=mydate.getMonth();
? var myday=mydate.getDate();
? var mynum=mydate.getDay();
? var myweek=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
? document.write(myyear+"年"+mymonth+"月"+myday+"日"+" "+myweek[mynum]+"<br>");
??
? //成績是一長竄的字符串不好處理,找規律后分割放到數組里更好操作哦
? var scoreStr = "小明:87;小花:81;小紅:97;小天:76;小張:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
? var myarr=new Array();
? myarr=scoreStr.split(";");
? document.write(myarr+"<br>");
? var sum=0;
? for(var i=0;i<myarr.length;i++){
? sum=sum+parseInt(myarr[i].substr(3,2));
? }//從數組中將成績撮出來,然后求和取整,并輸出。
? document.write(Math.ceil(sum)+"<br>");
? var aver=Math.round(sum/myarr.length);
? document.write(aver);
</script>
</head>
<body>
</body>
</html>
2016-02-01
我是這樣寫的 感覺把一些代碼拆成一個個函數,這樣思路會比較清晰
2016-02-01
嗯,有點遺憾,有幾處錯誤,sum要在循環外面賦值,在for里面賦值會導致每次循環都歸零的;
是(personInfo[n].indexOf.()+1),整體加1,你那樣寫是沒有含義的
personScore初始不是一個數組,而是每次循環得到個人分數(函數內的中間變量),不能加【n】,在你這里只是起到傳遞分數值給sum的作用