 
		qq_gone_hmoFGM
2018-07-14 18:12
<!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();
switch(date.getDay())
{
case 0:var day="日";break;
case 1:var day="一";break;
case 2:var day="二";break;
case 3:var day="三";break;
case 4:var day="四";break;
case 5:var day="五";break;
case 6:var day="六";break;
}
document.write(date.getFullYear()+"年"+(+date.getMonth()+1)+"月"+date.getDate()+"日"+" "+"星期"+day+"<br>");
//成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76" ;
var scoreArr=[scoreStr.split(';')];
//从数组中将成绩撮出来,然后求和取整,并输出
var sum=0;
for (var i =0 ;i < scoreArr.length; i ++)
{
sum += parseInt(scoreArr[i].substr(scoreArr[i].indexOf(":")+1));
}
var avg=sum/scoreArr.length;
document.write(sum);
document.write(avg);
</script>
</head>
<body>
</body>
</html>
结果能正确显示日期,就是不显示成绩,怎么回事呢?
 
				<!DOCTYPE  HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>系好安全带,准备启航</title>
<script type="text/javascript">
  function debuglogs(x) {
      document.write(x+"<br/>");
  }
  function debuglogs1(x,nline) {
    //   document.write(nline);
      if (nline) {
          document.write(x + "<br/>");
      } else {
          document.write(x);
      }
  }
  
  // 弱数据类型
  debuglogs1("这是一行文本数据-nline传false不换行",true);
  document.write("换行喽!"+"<br/>");
  
  
  
  document.write("**************************调试开始" + "<br/>");
  // 定义一个数组用于存储星期 第一天设定为星期日
  var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
  //通过javascript的日期对象来得到当前的日期,并输出。
  
  var dt= new Date();
  var year=dt.getFullYear();
  var month=dt.getMonth();
  var day=dt.getDate();
  var wday=weekday[dt.getDay()];
  
  var dateNweek4str=year +"年"+ month + "月" + day + "日 " + wday;
  
  debuglogs(dateNweek4str);
  
  //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
  var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
  
  var stuScores=scoreStr.split(";");
 
  //从数组中将成绩撮出来,然后求和取整,并输出。
  var sum=0,stunum=0;
  for(var i=0; i<stuScores.length; i++,stunum++) {
      
      var stuScore=stuScores[i].split(":");
      sum += parseInt(stuScore[1]);
      
      // 打印日志
      debuglogs("遍历索引号:" + i + " -- " + "姓名:"+stuScore[0] +" 分数:"+stuScore[1]);
      // 打印华丽分隔线
      debuglogs("----------------------------------------------------");
  }
  debuglogs("sum="+sum + " - " + stunum);
  var avg=Math.floor(sum/stunum);
  debuglogs("avg="+avg)
  
  document.write("**************************调试结束" + "<br/>");
  
  // 打印最终结果
  debuglogs(dateNweek4str + "--班级部分为:"+avg);
  
 
</script>
</head>
<body>
</body>
</html>
 
				<!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();
switch (date.getDay())
{
case 0:
var day = "日";
break;
case 1:
var day = "一";
break;
case 2:
var day = "二";
break;
case 3:
var day = "三";
break;
case 4:
var day = "四";
break;
case 5:
var day = "五";
break;
case 6:
var day = "六";
break;
}
document.write(date.getFullYear() + "年" + (+date.getMonth() + 1) + "月" + date.getDate() + "日" + " " + "星期" + day +
"<br>");
//成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
var scoreStr = "测试:100;小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
var scoreArr = [scoreStr.split(';')];
var len = [scoreStr.split(';')][0].length;
//从数组中将成绩撮出来,然后求和取整,并输出
var sum = 0;
for (var i = 0; i < scoreArr.length; i++) {
for (var j = 0; j < scoreArr[i].length; j++) {
sum += parseInt(scoreArr[i][j].substr(parseInt(scoreArr[i][j].lastIndexOf(':') + 1), scoreArr[i][j].length));
}
}
var avg = parseFloat(sum / len);
document.write("总分:" + sum + '平均分:' + avg);
</script>
</head>
<body>
</body>
</html>
 
				var scoreArr=[scoreStr.split(';')];
这一行,右边没有中括号的。
改成 var scoreArr=scoreStr.split(';'); 就可以了
JavaScript进阶篇
469067 学习 · 22582 问题
相似问题