为了账号安全,请及时绑定邮箱和手机立即绑定

帮帮我,i<=score.length为什么不行,还有getMonth为什么要加一,getDate就不用

<script type="text/javascript">

     var mydate=new Date();

     var myyear=mydate.getFullYear();

     var mymonth=mydate.getMonth()+1;//为什么要加一

     var myday=mydate.getDate();

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

     var mynum=mydate.getDay();

     document.write(myyear+"年"+mymonth+"月"+myday+"日"+weekday[mynum]);

     

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

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

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

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

  var sum=0;

  var avg=0;

  for(var i=0;i<score.length;i++){//一,i<=score.length为什么不行

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

  }

  avg=sum/score.length;

  document.write(parseInt(avg));


正在回答

4 回答

i<=score.length 不行?

答:以;为一组,i<9  score数组共有9个 下标是从0-8共9个

 i<=9 score数下标从0-9共10个 

   如下:从0开始计数 0+1=1 第一

 1+1=2      第二

2+1=3   第三

。。。

8+1=9  第九

9+1=10 第十

共有9个数组   现在i=10 i<=9不成立 所以i<=score.length不成立。

getMonths 为何加 1?

getMonths 同样是个定义的数组 数组定义从0-11 共12个(一月、二月--十二月对应0,1,2--11);

第0月没有 所以要+1。 

getdate不用是因为 js库里有对应的时间库对应着日期小时秒  直接调用就可以了。

0 回复 有任何疑惑可以回复我~
#1

快乐购 提问者

噢,懂了,原来如此,非常感谢!
2016-08-10 回复 有任何疑惑可以回复我~

getMonth返回的是0-11,所以要加1,;i<=score.length 不行是因为你设定i=0,score.length越界了,如果设置为i=1的话i<=score.length 就可以了

0 回复 有任何疑惑可以回复我~

是以数组形式来存储月份的。下标是从0-11

0 回复 有任何疑惑可以回复我~

getMonth+1是因为一月是0,十二月是11,要正常显示的话就+1

getDate应该可以吧


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

帮帮我,i<=score.length为什么不行,还有getMonth为什么要加一,getDate就不用

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号