问答详情
源自:7-23 编程练习

大神看看我这个怎么运行不出来??

<!DOCTYPE  HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>系好安全带,准备启航</title>

<script type="text/javascript">

  var date=new Date();
//通过javascript的日期对象来得到当前的日期,并输出。
 //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
  var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
 var str1=new Array(); 
 str1=scoreStr.split(";");
 var sum=0;
for(var i=0;i<str1.length;i++){
     sum += parseInt(sourceArr[i].substr(sourceArr[i].indexOf(":")+1));
}
var avg=sum/(str1.length);
  //从数组中将成绩撮出来,然后求和取整,并输出。
  document.write(date.getFullYear()+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日"+"  星期"+date.getDay()+"--班级总分为:"+sum+"平均分为:"+Math.round(avg));


</script>
</head>
<body>
</body>
</html>


提问者:Juneava 2016-11-04 22:09

个回答

  • 徐锦杰
    2016-11-04 22:46:07
    已采纳

    你定义的数组明明叫str1,下面使用的时候用的名字叫sourceArr

  • 徐锦杰
    2016-11-04 22:47:46

    17行 sum += parseInt(sourceArr[i].substr(sourceArr[i].indexOf(":")+1));改成 sum += parseInt(str1[i].substr(str1[i].indexOf(":")+1));应该就行了