一.知识点
1.定义常量:const
2.Date()对象用于处理日期和时间
可以获取当前的时分秒:
//获取系统当前时间
function getNowtime(){
//获取当前得时间
var nowTime=new Date();
var year=nowTime.getFullYear(); //年
var month=nowTime.getMonth()+1; //月
if (month < 10) {
month = "0" + month;
}
var day=nowTime.getDate();//日
if (day < 10) {
day = "0" + day;
}
var hour=nowTime.getHours();//小时
if(hour < 10) {
hour = "0" + hour;
}
var minute=nowTime.getMinutes();//分
if(minute < 10) {
minute = "0" + minute;
}
var second=nowTime.getSeconds(); //秒
if(second < 10) {
second = "0" + second;
}
getDatatime=year +"-"+ month +"-"+ day+" "+ hour +":"+ minute +":"+second;
date=year +""+ month +""+day;
time=hour +":"+ minute +":"+second;
}
可以设置时间:const endTime=new Date(2017,2,7,00,00,00);//这边表示2017,3,7
注意:
自己定义的关于date的函数(包括输入和输出)都应该采用贴合系统标准即月份从0开始计算;年,日从1开始计算
3.getTime():给它特定的时间,可以获取此时间的毫秒数
endTime.getTime()
4.Math.round()可把一个数字舍入为最接近的整数。
二.原理
初始化倒计时,计算当前时间与最终的时间做个比较,中间的差值在分别计算时,差值大于0,则目前时间还没有过期,否则已经过期
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<button id="datecnt" οnclick="datefun()">点击我</button>
<p>3月8活动到期</p>
<script>
const endTime=new Date(2017,2,7,0,0,0);//const定义常量
var curTime = new Date();
function datefun () {
var ret = endTime.getTime() - curTime.getTime();//最后时间的总秒数减去现在时间的秒数
ret = Math.round( ret/1000 );//round() 方法可把一个数字舍入为最接近的整数。
console.log(endTime)
console.log(curTime )
console.log( endTime.getTime())
console.log( curTime.getTime())
if(ret>0){
console.log('继续');
}else{
console.log('已经过期');
}
}
</script>
</body>
</html>