JS中的日期和时间详解
关于Date()构造函数
Date()构造函数是javascript的核心语言部分,用来创建表示时间和日期的对象。这些日期对象的方法为日期计算提供了简单的API。日期对象不是数字那样的基本类型。
简单实例
下面列举几个简单的实例来认识一下我们的这位新朋友:
var then = new Date(2019, 2 ,2); //2019年3月2日
var later = new Date(2019, 2 ,2, 17, 22, 24); //2019年3月2日5:22:24pm
var now = new Date(); //当前日期和时间
var elapsed = now - then; //日期减法:计算时间间隔的毫秒数
later.getFullYear() //=>2019
later.getMonth() //=>2:从0开始计数的月份
later.getDate() //=>2:从1开始计数的天数
later.getDay() //=>5:获取星期几,0代表星期日,1到6分别对应星期一到星期六
later.getHours() //=>17:获取小时数
later.getMinutes() //=>22:获取分钟数
later.getSeconds() //=>24:获取秒数
上边的几个实际应用体现出了我们的时间构造函数的强大之处,接下来我们就写一个简单的小功能,来实际演练一下。
用Date()构造函数创建时钟
<div id="clock"></div>
<script>
//创建时间函数;
!(function clock(){
var now = new Date();
var Y = now.getFullYear();
var m = getRealTime(now.getMonth()+1);
var d = getRealTime(now.getDate());
var H = getRealTime(now.getHours());
var i = getRealTime(now.getMinutes());
var s = getRealTime(now.getSeconds());
var now_time = Y +'-'+ m +'-'+ d +' '+ H +':'+ i +':'+ s;
document.getElementById('clock').innerHTML = now_time;
//一秒钟运行一次时间函数
setTimeout(clock,1000);
})();
//时间处理函数;
function getRealTime(str){
if(str < 10){
return '0'+str;
}
return str;
}
</script>
这样我们就创建了一个简单的时间计数器,还有更多好玩的功能,大家可以在实际生产中慢慢摸索,体验js的魅力。