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

下载的参考答案,看不懂,能祥细解答下吗? timeStr += date.getMonth() + 1 +"月"; timeStr += date.getDate()+"日"; 是什么意思?

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>系好安全带,准备启航</title>


<script type="text/javascript">


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

  var date = new Date();  // 实例化日期对象  

  var timeStr = '';//日期 

  timeStr = date.getFullYear() + "年" ;  

  timeStr += date.getMonth() + 1 +"月";  

  timeStr += date.getDate()+"日";  

  var day  = date.getDay(); //星期 

  var week = '';

  switch(day){

    case  0 :

week  = '星期一';

break;

case  1 :

week  = '星期二';

break;

case  2 :

week  = '星期三';

break;

case  3 :

week  = '星期四';

break;

case  4 :

week  = '星期五';

break;

case  5 :

week  = '星期六';

break;

case  6 :

week  = '星期天';

break; 

  }

  timeStr += "&nbsp;"+week;

  //打印出日期

  document.write(timeStr);



  

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

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

 

  var arr  = sorceStr.split(';');//按 ; 符号进行数组分割

  var sum = 0;

  var av= 0;

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

   var index = arr[i].indexOf(':'); //根据 : 符号确定数字开始的位置 

sum += parseInt(  arr[i].substr(index+1,2)  );  // parseInt() 字符串类型转成整型

   }

av = sum/arr.length;

    av = Math.floor(av);  // 取整

    



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

  

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


</script>

</head>

<body>

</body>

</html>


提问者:慕粉18229743112 2016-10-13 10:26

个回答

  • 慕姐6731210
    2016-10-13 14:29:20
    已采纳

    arr[i].substr(index+1,2)是在arr[i]这个字符串中substr获取index这个位子的后一个位子的元素,获取的长度为2.  然后用parseInt将获取到的字符转变成整形赋值给sum  

  • 慕粉18229743112
    2016-10-13 11:56:31

    哦,这个明白了,  var arr  = sorceStr.split(';');//按 ; 符号进行数组分割

      var sum = 0;

      var av= 0;

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

       var index = arr[i].indexOf(':'); //根据 : 符号确定数字开始的位置 

    sum += parseInt(  arr[i].substr(index+1,2)  );  // parseInt() 字符串类型转成整型

       }

    av = sum/arr.length;

        av = Math.floor(av);  // 取整

        

    那这一段能麻烦解释一下吗?sum += parseInt(  arr[i].substr(index+1,2)  ); 


  • ___Crystal
    2016-10-13 10:52:16

    timeStr += date.getMonth() + 1 +"月";      timeStr += date.getDate()+"日";

    这是为了得到一个年月日的字符串,getMonth()方法是得到0到11的数字,所以加1,+=在这里就是字符串的拼接,getDate是为了得到年月日的日