javascript入门·动态的时钟,显示完整的一些方法,新年倒计时
程序员文章站
2022-06-20 13:11:25
时间对象作为非常重要的一个对象,对我们学.net的人来说,并不是很重要,但这并不意味着我们可以忽略,事实上,用得着的时候还是很多的,如果完全依赖js处理时间,那是会出问题的...
时间对象作为非常重要的一个对象,对我们学.net的人来说,并不是很重要,但这并不意味着我们可以忽略,事实上,用得着的时候还是很多的,如果完全依赖js处理时间,那是会出问题的,因为js总是假设本地机器上的时间是正确的。还有个原因,他总按照gtm市区来计量。我们只是返回当前date对象的副本,我们即便是修改,那也不会对对象本身有任何影响。
演示一:动态的时钟(来个复杂的)
11:55:13
演示二:显示完整的一些方法(事实上我很讨厌有些格式了)
mon oct 1 22:35:25 utc+0800 2007
从1970-01-01到现在共过了1191249325859毫秒
返回当前的年份2007
2007
返回当前月91因为月是0-11,所以要加1
返回当前日期1
返回当前星期1
返回当前小时22
返回当前分钟35
返回当前的秒25
wed aug 16 11:55:03 utc+0800 2006
从1970-01-01到现在共过了1155700503156毫秒
返回当前的年份2006
2006
返回当前月71因为月是0-11,所以要加1
返回当前日期16
返回当前星期3
返回当前小时11
返回当前分钟55
返回当前的秒3
演示三: 倒计时
距2006年新年还有90天01小时24分34秒! 距2006年新年还有136天12小时04分56秒!
<%@language="javascript" codepage="936"%>
<!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">
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<title>js核心对象之date</title>
<script type="text/javascript">
function starttime()
{
var today=new date()//定义一个时间对象
var h=today.gethours()//定义小时
var m=today.getminutes()//定义分钟
var s=today.getseconds()//定义秒
// add a zero in front of numbers<10
m=checktime(m)//把分给checktime处理
s=checktime(s)//把秒给checktime处理
document.getelementbyid('txt').innerhtml=h+":"+m+":"+s//在层txt中显示
t=settimeout('starttime()',500)//关键的一句,美隔500毫秒运行一次本函数
}
function checktime(i)
{//这函数意思很简单了,就是要实现01-09的效果
if (i<10) //
{i="0" + i}
return i
}
</script>
</head>
<body onload="starttime()">
<p>时间对象作为非常重要的一个对象,对我们学.net的人来说,并不是很重要,但这并不意味着我们可以忽略,事实上,用得着的时候还是很多的,如果完全依赖js处理时间,那是会出问题的,因为js总是假设本地机器上的时间是正确的。还有个原因,他总按照gtm市区来计量。我们只是返回当前date对象的副本,我们即便是修改,那也不会对对象本身有任何影响。</p>
<p><strong>演示一:动态的时钟</strong>(来个复杂的)</p>
<div id="txt"></div>
<p><strong>演示二:显示完整的一些方法(事实上我很讨厌有些格式了)</strong></p>
<p>
<script language="javascript">
var md=new date()
document.write(md+"<br>")
document.write("从1970-01-01到现在共过了"+md.gettime()+"毫秒<br>")
document.write("返回当前的年份"+md.getyear()+"<br>")
document.write(md.getfullyear()+"<br>")
document.write("返回当前月"+md.getmonth()+1+"因为月是0-11,所以要加1<br>")
document.write("返回当前日期"+md.getdate()+"<br>")
document.write("返回当前星期"+md.getday()+"<br>")
document.write("返回当前小时"+md.gethours()+"<br>")
document.write("返回当前分钟"+md.getminutes()+"<br>")
document.write("返回当前的秒"+md.getseconds()+"<br>")
</script>
</p>
<p><strong>演示三: 倒计时</strong></p>
<p>
<script language="javascript">
today = new date();//申明一个时间对象
intdate = today.getdate();//返回当前的天日期
inthours = today.gethours();//返回当前小时
intminutes = today.getminutes();//分钟
intseconds = today.getseconds();//秒
intmonth = today.getmonth()+1 ;//月加1
intyear = today.getyear();//返回年
//以下是为了得到0时0分0秒的差数
hours = inthours;
hours = (23 - hours);
minutes = intminutes;
minutes = (59 - minutes);
seconds = intseconds;
seconds = (59 - seconds);
if (intyear % 4 == 0 && intyear % 100 != 0 || intyear % 400 == 0)
//如果当前年除以4余数为0 同时 当前年初与100 余数不为0 或者 当前年除以400余数为0,那么本年为366天
{ if (intmonth == 1) {month = "距2006年新年还有"; date = (366 - intdate);}
//以下与本句同意思:用余下的天数减去当前的日期号数例如下句,因为是二月,所以只由335天,减当前天的号数
if (intmonth == 2) {month = "距2006年新年还有"; date = (335 - intdate);}
}
else//否则为365天
{ if (intmonth == 1) {month = "距2006年新年还有"; date = (365 - intdate);}
if (intmonth == 2) {month = "距2006年新年还有"; date = (334 - intdate);}
}
if (intmonth == 3) {month = "距2006年新年还有"; date = (304 - intdate);}
if (intmonth == 4) {month = "距2006年新年还有"; date = (273 - intdate);}
if (intmonth == 5) {month = "距2006年新年还有"; date = (243 - intdate);}
if (intmonth == 6) {month = "距2006年新年还有"; date = (212 - intdate);}
if (intmonth == 7) {month = "距2006年新年还有"; date = (182 - intdate);}
if (intmonth == 8) {month = "距2006年新年还有"; date = (152 - intdate);}
if (intmonth == 9) {month = "距2006年新年还有"; date = (121 - intdate);}
if (intmonth == 10) {month = "距2006年新年还有"; date = (91 - intdate);}
if (intmonth == 11) {month = "距2006年新年还有"; date = (60 - intdate);}
if (intmonth == 12) {month = "距2006年新年还有"; date = (30 - intdate);}
//以下当然意思有所变了,但是一下的 天,时 ,分,秒 意思差不错了
if (date == 1 ){date = ("0"+date+"天 ");}//如果上面的date得1,那就在前面加个0
if (date != 1 && date < 10 && date >=0){date = ("0"+date+"天");}//如果不等于1且小于10,同时大于等于0 都加个0
if (date > 9){date = (date+"天");}//如果大于9就不用加了
if (hours ==1 ){hours = ("0"+hours+"小时");}
if (hours != 1 && hours < 10){hours = ("0"+hours+"小时");}
if (hours > 9){hours = (hours+"小时");}
if (minutes == 1){minutes = ("0"+minutes+"分 ");}
if (minutes != 1 && minutes < 10){minutes = ("0"+minutes+"分");}
if (minutes > 9){minutes = (minutes+"分");}
if (seconds == 1){seconds = ("0"+seconds+"秒 "+"!");}
if (seconds != 1 && seconds < 10){seconds = ("0"+seconds+"秒!");}
if (seconds > 9){seconds = (seconds+"秒!");}
//如果天小于0,那表示新年到了萨
if (date < 0){month = "happy";date = " new year!";hours = " 新年";minutes = "快乐";seconds = "!";}
//下面是组合所有的值,简单吧
timestring = month+date+hours+minutes+seconds;
document.write(timestring)
</script>
</p>
</body>
</html>
演示一:动态的时钟(来个复杂的)
11:55:13
演示二:显示完整的一些方法(事实上我很讨厌有些格式了)
mon oct 1 22:35:25 utc+0800 2007
从1970-01-01到现在共过了1191249325859毫秒
返回当前的年份2007
2007
返回当前月91因为月是0-11,所以要加1
返回当前日期1
返回当前星期1
返回当前小时22
返回当前分钟35
返回当前的秒25
wed aug 16 11:55:03 utc+0800 2006
从1970-01-01到现在共过了1155700503156毫秒
返回当前的年份2006
2006
返回当前月71因为月是0-11,所以要加1
返回当前日期16
返回当前星期3
返回当前小时11
返回当前分钟55
返回当前的秒3
演示三: 倒计时
距2006年新年还有90天01小时24分34秒! 距2006年新年还有136天12小时04分56秒!
<%@language="javascript" codepage="936"%>
<!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">
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<title>js核心对象之date</title>
<script type="text/javascript">
function starttime()
{
var today=new date()//定义一个时间对象
var h=today.gethours()//定义小时
var m=today.getminutes()//定义分钟
var s=today.getseconds()//定义秒
// add a zero in front of numbers<10
m=checktime(m)//把分给checktime处理
s=checktime(s)//把秒给checktime处理
document.getelementbyid('txt').innerhtml=h+":"+m+":"+s//在层txt中显示
t=settimeout('starttime()',500)//关键的一句,美隔500毫秒运行一次本函数
}
function checktime(i)
{//这函数意思很简单了,就是要实现01-09的效果
if (i<10) //
{i="0" + i}
return i
}
</script>
</head>
<body onload="starttime()">
<p>时间对象作为非常重要的一个对象,对我们学.net的人来说,并不是很重要,但这并不意味着我们可以忽略,事实上,用得着的时候还是很多的,如果完全依赖js处理时间,那是会出问题的,因为js总是假设本地机器上的时间是正确的。还有个原因,他总按照gtm市区来计量。我们只是返回当前date对象的副本,我们即便是修改,那也不会对对象本身有任何影响。</p>
<p><strong>演示一:动态的时钟</strong>(来个复杂的)</p>
<div id="txt"></div>
<p><strong>演示二:显示完整的一些方法(事实上我很讨厌有些格式了)</strong></p>
<p>
<script language="javascript">
var md=new date()
document.write(md+"<br>")
document.write("从1970-01-01到现在共过了"+md.gettime()+"毫秒<br>")
document.write("返回当前的年份"+md.getyear()+"<br>")
document.write(md.getfullyear()+"<br>")
document.write("返回当前月"+md.getmonth()+1+"因为月是0-11,所以要加1<br>")
document.write("返回当前日期"+md.getdate()+"<br>")
document.write("返回当前星期"+md.getday()+"<br>")
document.write("返回当前小时"+md.gethours()+"<br>")
document.write("返回当前分钟"+md.getminutes()+"<br>")
document.write("返回当前的秒"+md.getseconds()+"<br>")
</script>
</p>
<p><strong>演示三: 倒计时</strong></p>
<p>
<script language="javascript">
today = new date();//申明一个时间对象
intdate = today.getdate();//返回当前的天日期
inthours = today.gethours();//返回当前小时
intminutes = today.getminutes();//分钟
intseconds = today.getseconds();//秒
intmonth = today.getmonth()+1 ;//月加1
intyear = today.getyear();//返回年
//以下是为了得到0时0分0秒的差数
hours = inthours;
hours = (23 - hours);
minutes = intminutes;
minutes = (59 - minutes);
seconds = intseconds;
seconds = (59 - seconds);
if (intyear % 4 == 0 && intyear % 100 != 0 || intyear % 400 == 0)
//如果当前年除以4余数为0 同时 当前年初与100 余数不为0 或者 当前年除以400余数为0,那么本年为366天
{ if (intmonth == 1) {month = "距2006年新年还有"; date = (366 - intdate);}
//以下与本句同意思:用余下的天数减去当前的日期号数例如下句,因为是二月,所以只由335天,减当前天的号数
if (intmonth == 2) {month = "距2006年新年还有"; date = (335 - intdate);}
}
else//否则为365天
{ if (intmonth == 1) {month = "距2006年新年还有"; date = (365 - intdate);}
if (intmonth == 2) {month = "距2006年新年还有"; date = (334 - intdate);}
}
if (intmonth == 3) {month = "距2006年新年还有"; date = (304 - intdate);}
if (intmonth == 4) {month = "距2006年新年还有"; date = (273 - intdate);}
if (intmonth == 5) {month = "距2006年新年还有"; date = (243 - intdate);}
if (intmonth == 6) {month = "距2006年新年还有"; date = (212 - intdate);}
if (intmonth == 7) {month = "距2006年新年还有"; date = (182 - intdate);}
if (intmonth == 8) {month = "距2006年新年还有"; date = (152 - intdate);}
if (intmonth == 9) {month = "距2006年新年还有"; date = (121 - intdate);}
if (intmonth == 10) {month = "距2006年新年还有"; date = (91 - intdate);}
if (intmonth == 11) {month = "距2006年新年还有"; date = (60 - intdate);}
if (intmonth == 12) {month = "距2006年新年还有"; date = (30 - intdate);}
//以下当然意思有所变了,但是一下的 天,时 ,分,秒 意思差不错了
if (date == 1 ){date = ("0"+date+"天 ");}//如果上面的date得1,那就在前面加个0
if (date != 1 && date < 10 && date >=0){date = ("0"+date+"天");}//如果不等于1且小于10,同时大于等于0 都加个0
if (date > 9){date = (date+"天");}//如果大于9就不用加了
if (hours ==1 ){hours = ("0"+hours+"小时");}
if (hours != 1 && hours < 10){hours = ("0"+hours+"小时");}
if (hours > 9){hours = (hours+"小时");}
if (minutes == 1){minutes = ("0"+minutes+"分 ");}
if (minutes != 1 && minutes < 10){minutes = ("0"+minutes+"分");}
if (minutes > 9){minutes = (minutes+"分");}
if (seconds == 1){seconds = ("0"+seconds+"秒 "+"!");}
if (seconds != 1 && seconds < 10){seconds = ("0"+seconds+"秒!");}
if (seconds > 9){seconds = (seconds+"秒!");}
//如果天小于0,那表示新年到了萨
if (date < 0){month = "happy";date = " new year!";hours = " 新年";minutes = "快乐";seconds = "!";}
//下面是组合所有的值,简单吧
timestring = month+date+hours+minutes+seconds;
document.write(timestring)
</script>
</p>
</body>
</html>