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

看过来看过来

<!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 mynum = mydate.getDay();

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

  var year = mydate.getFullYear();

  var month = mydate.getMonth() + 1;

  var day = mydate.getDate();

 document.write("今天是:"+ year + "年" + month + "月" + day + "日" + weekday[mynum] + "<br>");


  

  

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

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

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

var sum = 0 ;

var aver = 0;



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

  

  function add(){

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

      {

          sum = sum + parseInt(arr[i].substr(3,2));

          aver = sum / i;

      }

      return aver;

  }

  document.write("班级的平均分是:" + Math.round(add()));

  



</script>

</head>

<body>

</body>

</html>


正在回答

5 回答

arr[i].substr(3,2)

上面这样截取一定会出问题,无法用于实际开发,你这个只适用于小明、小红这类两个字的名字,只要超过两个字或者小于两个字,算出来的结果就不对了

0 回复 有任何疑惑可以回复我~
const scoreStr = '小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76';
const week = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六',];
const handler = str => {        
    let data = str.split(';').map(val => val.split(':')[1]).map(val => +val)        
    return parseInt(data.reduce((prev, acc) => prev + acc) / data.length)  
}    
let date = new Date()    
console.log(`${date.getFullYear()}年${date.getMonth() + 1}月${date.getDate()} ${week[date.getDay()]}--班级总分为:${handler(scoreStr)}`)


0 回复 有任何疑惑可以回复我~
来呀来呀!
<script type="text/javascript">
var weekday =["星期日","星期一","星期二","星期三","星期四","星期五","星期六",];
var nowdate =new Date();
var day =nowdate.getDate();
var w   =nowdate.getDay();
var wday=weekday[w];
var mon =nowdate.getMonth();
var year=nowdate.getFullYear();  
//通过javascript的日期对象来得到当前的日期,并输出。 
document.write(year+"年"+mon+"月"+day+"日"+"&nbsp;&nbsp;"+wday+"--班级总分为:")   
//成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好 
//从数组中将成绩撮出来,然后求和取整,并输出。
var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
var f = scoreStr.split(";");
var k=0,sum=0;
var s; 
while (k<f.length){
    s=f[k].split(":");    
    k++;    
    sum+=parseInt(s[s.length-1]);
    }    
document.write(sum/f.length);
</script>


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

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

      {

          sum = sum + parseInt(arr[i].substr(3,2));

          aver = sum / a.length;

      }

      return aver;

  }

如果 aver = sum / i;    根据判断条件,这时候i=9, 正确应该是10

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

nice!

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

举报

0/150
提交
取消

看过来看过来

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