JS进阶篇 7-23编程练习,下面下划线部分都不太明白啊!!感谢大神!

来源:7-23 编程练习

巴音塔塔

2016-12-13 13:35

<script type="text/javascript">


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

  var currentDate = new Date();

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

  document.write(

      currentDate.getFullYear() + "年" + 

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

      currentDate.getDate() + "日" + " " + 

      weekday[currentDate.getDay()]

      );

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

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

  var sourceArr = sorceStr.split(";");

  //document.write(sourceArr);//test

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

   var score = new Array();

   var sum = 0;

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

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

       //document.write("<br>" + sum);//test

   }

   document.write("--班级总分为:" + sum);

   document.write(",班级平均分为(保留整数):" + Math.round(sum/sourceArr.length))

</script>


写回答 关注

1回答

  • 我不是管家
    2016-12-13 14:13:22

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

    ↑  声明一个长的字符串

      var sourceArr = sorceStr.split(";");

    ↑ 通过字符‘;’把长字符串分割成一个数组,此时sourceArr=["小明:87","小花:81","小红:97","小天:76","小张:74","小小:94","小西:90","小伍:76","小迪:64","小曼:76"]   所以sourceArr[0]=小明:87;sourceArr[1]=小花:81......一次类推

      var score = new Array();

       var sum = 0;

    ↑ 声明一个数组和一个number

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

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

           //document.write("<br>" + sum);//test

       }

    ↑for循环,长度是数组的长度; sourceArr[i].indexOf(":")+1,获取数字在'小迪:64'的起始位置,例如: 出现的位置是3,则+1,获取从4开始的字符,所以可以获得字符串'64'; 

    sum += parseInt(sourceArr[i].substr(sourceArr[i].indexOf(":")+1));先把同学的成绩从字符串转化为数字,再获取每个同学的成绩并相加

    document.write("--班级总分为:" + sum);

    ↑  此时的sum是同学的成绩总和

      document.write(",班级平均分为(保留整数):" + Math.round(sum/sourceArr.length))

    ↑  sourceArr.length是数组的个数也是同学的个数,平均数也就等于成绩总和/同学的个数


JavaScript进阶篇

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

468060 学习 · 21891 问题

查看课程

相似问题