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

为什么总分输出那么多行呢?求指导。

<!DOCTYPE  HTML>
<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 y=mydate.getFullYear();
  var m=mydate.getMonth();
  var day=mydate.getDate();
  var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
  var d=mydate.getDay();
  document.write(y+"年"+(m+1)+"月"+day+"日"+"<br/>");
document.write(weekday[d]+"<br/>"+"<br/>")
 
  //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
  var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
arr=scoreStr.split(":");
document.write(arr+"<br/>"+"<br/>");
var sum=0;
for(var i=1;i<=arr.length;i++){
    var arrnew=[arr[i].substring((arr.indexOf(",")+1),2)];
   document.write(arrnew+"<br/>");
    sum=parseInt(sum)+parseInt(arr[i]);
   
    document.write("班级总分为:"+sum+"<br/>");

}

  //从数组中将成绩撮出来,然后求和取整,并输出。
//var s,sum=0;
//for(var s=0;s<arrnew.length;s++;){
  //   sum=parseInt(sum)+parseInt(s);
    //document.write("班级总分为:"+sum+"<br/>")
//}

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

提问者:chaohua 2018-08-11 14:18

个回答

  • 万般浮云
    2018-08-13 00:55:08

    for(var i=1;i<=arr.length;i++){
        var arrnew=[arr[i].substring((arr.indexOf(",")+1),2)];
        sum+=parseInt(arrnew);
    }

    document.write("班级总分为:"+sum+"<br/>");


  • qq_茗菛书笙_03882178
    2018-08-11 14:38:24

    for(var i=1;i<=arr.length;i++){
        var arrnew=[arr[i].substring((arr.indexOf(",")+1),2)];
       document.write(arrnew+"<br/>");
        sum=parseInt(sum)+parseInt(arr[i]);
        
        document.write("班级总分为:"+sum+"<br/>");

    }

    因为你这一段里每执行一遍,就会输出次总分把下划线这句话拿出循环外面就可以了