码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript内置对象,Date String Array等,以及这些对象操作。

时间:2015-04-21 01:40:47      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:

练习题:

 

某班的成绩出来了,现在老师要把班级的成绩打印出来。
效果图:
2014年5月9日 星期六--班级总分为: 班级平均分为:
格式要求:
1、显示打印的日期。 格式为类似“2014年03月21日 星期三” 的当前的时间。
2、计算出该班级的平均分(保留整数)。
同学成绩数据如下:
"小明:87; 小花:81; 小红:97; 小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76"
任务
第一步:可通过javascript的日期对象来得到当前的日期。
提示:使用Date()日期对象,注意星期返回值为0-6,所以要转成文字"星期X"
第二步:一长窜的字符串不好弄,找规律后分割放到数组里更好操作哦。
第三步:分割字符串得到分数,然后求和取整。

代码实现:

<1>html部分

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>date.string</title>
<link rel="stylesheet" type="text/css" href="styles/001.css" />
</head>
<body>
<script src="styles/001.js"></script>
<div id="time"><input type="button" value="点击获取时间" onclick="sTime()"/></p></div>
<hr/>

<div id="scor">
<h3>学生成绩为:小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76</h3>
<input type="button" value="点击获取平均分" onclick="scppp()" />
<input type="text" id="texttt"/>
</div>


</body>
</html>

<2>css部分

*{margin:0;padding:0;}
body{
width:100%;

}
#time{
margin:auto;
height:50px;

}
#scor{

width:100%;
height:60px;
margin-top: 20px;
}

<3>js部分

1.第一种方法
//获取时间
function sTime()
{
var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

var d = new Date();    //返回当前日期
var x=d.getFullYear(); //返回四位数年份
var y=d.getMonth();   //返回当前月份 0:一月
z=y+1;
s=d.getDate();          //返回日
var i=d.getDay();       //返回星期 0:星期日
document.getElementById("time").innerHTML=x+"年"+z+"月"+s+"日"+weekday[i];
}

//学生成绩
function scppp(){
var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
var sco1=new Array();
var j=0;
sco1=scoreStr.split(":"); //以“:”为分隔分隔这和字符串,分割后的数组元素存入到sco1数组中
for(i=1;i<=sco1.length-1;i++) //由于sco1【0】没有数字 故从1开始计数  由于本意是想要排除没有数字的sco【0】(小明),但这不太符合编程的计数习惯,那么我们可以利用if语句来进行判断,for(i=1;i<=sco1.length-1;i++)   if(parseInt(sco【i】=!NaN))再进行加和
{

s=parseInt(sco1[i]);  //利用parseInt提取数组元素中的数字
j=j+s;

}
document.getElementById("texttt").value=parseInt(j/(sco1.length-1));

}

2.第二种方法

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

var myarr = scoreStr.split(";");//第一次字符串分割

var num = 0; var str;

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

str=myarr[i];//取出数组的所有元素,每个元素其实又是一个字符串     一维数组      

 myarr[i] = new Array();//然后每个元素的字符串再进行分割        

myarr[i] = str.split(":"); //分割方式,第二次字符串分割,      形成二维数组      

 num =num + parseInt(myarr[i][1]); //二维数组    }

document.write(num);  //从数组中将成绩撮出来,然后求和取整,并输出。

 

JavaScript内置对象,Date String Array等,以及这些对象操作。

标签:

原文地址:http://www.cnblogs.com/brace/p/4443090.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!