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

为什么我这个代码输出的日期和真实时间不相符

<!DOCTYPE  HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>系好安全带,准备启航</title>

<script type="text/javascript">
var mydate=new Date();
var i=["周一","周二","周三","周四","周五","周六","周日"];
document.write(mydate.getFullYear()+"年"+mydate.getMonth()+"月"+mydate.getDay()+"日"+i[mydate.getDay()]);
  //通过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++) {
      sum = sum + parseInt(score[i].slice(3,5));
  }
  document.write("该班级总分为:"+parseInt(sum)+"<br/>")
  avg = sum / score.length;
  document.write("班级平均分是:"+parseInt(avg));



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


</script>
</head>
<body>
</body>
运行结果是:

2018年4月4日周五该班级总分为:815
班级平均分是:81

正在回答

3 回答

我也遇到了这个问题,

1. 首先说一下你的月份错误原因:

getMonth()返回的值是0到11, 0代表一月,所以返回数字5其实表示的是“4”月;

2. “日”错误原因:

获取“日”应该使用 getDate() 而不是 getDay(), getDay() 是获取星期几;

3. 星期错误原因:

你保存星期的字符串的数组是错的,应该是:

var i = ["星期日", "星期一", .......] 后面自己补全,就是第一个该是星期日而不是星期一。


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

花椋 提问者

谢谢,我已经试过了,成功了
2018-05-07 回复 有任何疑惑可以回复我~

不建议用slice(3,5),因为实际应用中,名字可能是三位,建议用split(":")[1]

因为把冒号分割之后,返回数组,0为字符串姓名,1为数值成绩。

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

今天是5月3号周四呀

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

举报

0/150
提交
取消

为什么我这个代码输出的日期和真实时间不相符

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信