运行结果不对

来源:7-23 编程练习

慕侠5336557

2018-07-22 10:08

请各位大佬帮忙看看,为啥运行结果是这样的

https://img3.mukewang.com/5b53e6f40001ff8903230062.jpg

<script type="text/javascript">


  //通过javascript的日期对象来得到当前的日期,并输出。

  var day=new Date;

  var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

  //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦

  var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";

  var cell=scoreStr.split(";");

  //从数组中将成绩撮出来,然后求和取整,并输出。

  var sum="0";

  for(var i=0 ; i<cell.length ; i++){

    sum += parseInt(cell[i].substring(cell[i].indexOf(":")+1));  

  }

  document.write(day.getFullYear()+"年"+

                 (day.getMonth()+1)+"月"+

                 day.getDate()+"日"+"&nbsp"+

                 weekday[day.getDay()]+"--"+

                 "班级总分为:"+sum+"<br/>");

</script>


写回答 关注

2回答

  • 慕慕5304577
    2018-07-22 15:26:11
    已采纳

    var sum=0; 而不是等于一个字符串,后续的循环只会输出字符串你试试看吧

    慕侠5336...

    非常感谢!就是这里的问题

    2018-07-22 16:02:48

    共 1 条回复 >

  • 慕村4269513
    2018-07-22 15:04:36

    sum += parseInt(cell[i].substring(cell[i].indexOf(":")+1)); 

    改为sum += parseInt(cell[i].substr(cell[i].indexOf(":")+1)); 

    慕侠5336...

    这两个的差别在于第二个参数,substr(a,b);中的b是指提取的长度; substring(a,b)中的b是指提取字符串的结束的位置; 两个a都是开始的位置;所以在这里没有差别

    2018-07-22 16:05:25

    共 1 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题