提取成绩的问题?

来源:7-23 编程练习

竹子glglgl

2016-07-20 17:53

为什么我这样提取出不来,是错的呢?

求指点

 document.write(scoreStr.split(";")+"<br>");

 

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

  

  //var score = new Array();

  document.write(sourceArr.substr(3));


写回答 关注

3回答

  • ddmmdd
    2016-07-20 20:31:12

    document.write(scoreStr.split(";")+"<br>");

     

      var sourceArr = sorceStr.split(";");  //你定义一个数组

      

      //var score = new Array();

      document.write(sourceArr.substr(3));//这里你按字符串对待干嘛;

    document.write(sourceArr[0]);//这样才算取出数组里的第一个元素,然后你得对这个元素按“:”拆分成一个新的数组,再取第二个元素的值就是成绩了;

    加油!


  • Fou念你终老i
    2016-07-20 19:47:02

    请采纳哦

  • Fou念你终老i
    2016-07-20 19:46:11

    因为sourceArr只是得到了sorceStr由;拆分后的一个数组, 暂时是不能用substr命令得到的

    代码应该这样写:

    <script type="text/javascript">

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

        var currentDate = new Date();

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

        document.write(currentDate.getFullYear() + "年" +(currentDate.getMonth() + 1) + "月"+currentDate.getDate() + "日" + " " + weekday[currentDate.getDay()]+"<br>");

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

      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+"<br>");

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

    </script>


JavaScript进阶篇

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

468060 学习 · 21891 问题

查看课程

相似问题