1.日期對象
日期對象:
經由過程new Date()就能夠建立一個日期對象,這個對象中有當前體系時刻的一切細緻信息。
以下代碼能夠獵取當前時刻:
<script>
var t = new Date();
console.log(t);
console.log(typeof t);
</script>
假如想不斷打印當前的時刻,能夠看以下代碼:
<script>
setInterval(function () {
var t = new Date();
console.log(t);
},1000);
2.日期對象的參數
參數:
(1)年月日 時分秒
new Date(2016,0,12,2,40,21);月是從0最先算,所以0示意的是1月
(2)字符串
new Date('Oct 27,2016 10:10:12');
(3)時刻戳
時刻戳(獵取1970-01-01 00:00:00到現在日期對象的時刻差(單元:毫秒))
以下代碼,能夠把解釋翻開,檢察效果:
<script>
var t= new Date(2016,0,12,2,40,21);//月是從0最先算,所以0示意的是1月。打印效果是Tue Jan 12 2016 02:40:21 GMT+0800 (CST)。
// var t= new Date("Oct 27,2016 10:10:12");//打印效果是Thu Oct 27 2016 10:10:12 GMT+0800 (CST)。
// var stemp= new Date().getTime();// 時刻戳 間隔 1970年1月1日0:0:0 的毫秒差。
// var t= new Date(stemp);//把時刻戳傳進去,獵取對應的時刻。打印的效果當前時刻
// var t= new Date(0);//示意1970年1月1日0:0:0
// var t = new Date(stemp+10000*1000);//示意間隔stmp10000秒以後的時刻。
console.log(t);
</script>
3.獵取細緻時刻和設置細緻時刻
獵取細緻時刻:
getFullYear(); 獵取年
getMonth(); 獵取月(月份從0最先盤算)
getDate(); 獵取日
getDay(); 獵取天
getHours(); 獵取時
getMinutes(); 獵取分
getSeconds(); 獵取秒
getMilliseconds(); 獵取毫秒
getTime(); 獵取1970-01-01 00:00:00到現在日期對象的時刻差(單元:毫秒)
設置細緻時刻:
setFullYear() 設置年
setMonth() 設置月 (月份從0最先盤算)
setDate() 設置日
setHours() 設置小時
setMinutes() 設置分鐘
setSeconds() 設置秒鐘
setMilliseconds() 設置毫秒
setTime() 設置1970-01-01 00:00:00到現在日期對象的時刻差(單元:毫秒)
注重:
設置日期對象的時刻只是在操縱這個對象,沒有操縱本機的體系時刻
4.字符時鐘
以下是字符時鐘代碼:
<body>
<div></div>
<script>
var div=document.getElementsByTagName("div")[0];
//函數作用是,當獵取的分秒小於0的時刻,往前面加"0"。
function add0(num) {
if(num<10){
return "0"+num;
}else{
return num+"";
}
}
setInterval(function () {
var t=new Date();
var hour=t.getHours();//獵取時
var m=add0(t.getMinutes());//獵取分
var s=add0(t.getSeconds());//獵取秒
var time=hour+":"+m+":"+s;
div.innerHTML=time;
},1000);
</script>
</body>
5.盤算這個月有若干天的三種體式格局
體式格局一:
<script>
//因為函數內部會盤算每月有若干天,當設置超越時,會溢出,獲得的是下個月的時刻。
var t=new Date();
var M=t.setMonth(0);//設着月份為1月
t.setDate(32);//設置天數為32天,但1月份只要31天則會溢出。則時刻設置后是2月1號
console.log("2018年1月有"+(32-t.getDate())+"天");
</script>
體式格局二:
<script>
var t=new Date();
var M=t.setMonth(1);//設着月份為2月
t.setDate(0);//設置為0天,則會跳回上個月的末了一天。
console.log("2018年1月有"+(t.getDate())+"天");
</script>
體式格局三:
<script>
var t=new Date();
var M=t.setMonth(0);//設着月份為1月
t.setDate(32);//設置天數為32天,但1月份只要31天則會溢出。則時刻設置后是2月1號
t.setDate(0);//設置為0天,則會跳回上個月的末了一天。
console.log("2018年1月有"+(t.getDate())+"天");
</script>