问答详情
源自: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 weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

document.write(mydate.getFullYear()+"年"+mydate.getMonth()+"月"+mydate.getDay()+"日"+weekday[mydate.getDay()]);

  

  


  

  

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

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

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



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

  var sum = 0;

  var avg = 0;

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

      sum = sum + parseInt(scoreArr[i].slice(3,5));

  }

  avg = sum / scoreArr.length;

  document.write("班级的平均分是:"+parseInt(avg));

</script>

</head>

<body>

</body>

</html>


我得出来是2015年11月4日星期四……

还有计算总分那里不是很懂,求讲解,看了别人的没看懂……

提问者:Mltwind 2015-12-03 11:13

个回答

  • 闹小志
    2015-12-03 12:04:53
    已采纳

    1、时间的问题如ls所讲,getDate才是获取日的方法。

    2、主要的关键在于理解split函数和slice函数:

     var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
      var scoreArr=scoreStr.split(";");//将字符串按分号分割,形成数组,也就是说 scoreArr是一个数组,例如:scoreArr[0]存储的是小明:87
     var sum = 0;
     var avg = 0;
     for (var i = 0; i < scoreArr.length; i++) {//循环数组,遍历数组中每一个存储的内容
        sum = sum + parseInt(scoreArr[i].slice(3,5));//将每一项中存储的内容中第3个位置到第5个位置(不包括)截取,例如:小明:87 截取的就是87,这个87是字符串,要转换成数字类型的才可以进行加换算,每一个都相加就得到了总和sum
      }
     avg = sum / scoreArr.length;//总和除以数组的长度(与学生数相同)就得到了平均值。
     document.write("班级的平均分是:"+parseInt(avg));


  • 帮秋
    2015-12-03 11:22:03

    getMonth()  取值是0-11  ,取出来以后需要加1 ,getDate() 是获取日,getDay() 是获取星期