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

练习题交作业

<!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 year=mydate.getFullYear();

  var month=mydate.getMonth()+1;

  var date=mydate.getDate();

  var week=['星期日','星期一','星期二','星期三','星期四','星期五','星期六']

  var mynum=mydate.getDay();

  document.write(year+'年'+month+'月'+date+'日'+'&nbsp;'+week[mynum]+"<br/>");

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

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

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

  var sum=0;

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

     sum += parseInt(person[i].slice(3));

  }

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

  document.write("班级总分:"+sum+"<br/>");

  document.write("班级平均分:"+ Math.round(sum/(person.length+1)));

</script>

</head>

<body>

</body>

</html>


正在回答

1 回答

几个小建议:
1.获取日期,获取成绩可以分成两个函数分开写;
2.可以写一个formatNum的函数,将小于10的月份和日子转为01、02……09的格式;
3.person[i].slice(3)这边可以继续使用split(":")进行分割;
4.parseInt函数最好还是使用第二个参数,比如这里parseInt(person[i].slice(3), 10)表示10进制,否则eslint规范会报错;
5.Math.round(sum/(person.length+1))这里应该是person.length,而不是length+1。


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

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468284    人
  • 解答问题       21892    个

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

进入课程

练习题交作业

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