时间都去哪了,JS中时间对象Date介绍

【时间对象】

世界上最快而又最慢,最长而又最短,最平凡而又最珍贵,最轻易被人忽视,而又最令人后悔的就是时间。关于生命的名言警句。——高尔基
平时生活中经常会提到时间的观念,js中有时间对象,可以从这个对象身上获取很多对我们写程序有帮助的信息,时间信息。
下面我就来介绍一些时间对象。

首先,创建时间对象:

let oDate=new Date();  //Date是js中的时间对象,也是属于构造函数,我们通过new的方法new出一个时间对象
alert(oDate)  //Tue Feb 28 2017 21:44:07 GMT+0800 (中国标准时间)

时间对象身上都有哪些信息:

alert(oDate.getFullYear())  //返回本地时间的年份值

alert(oDate.getMonth())   //返回本地时间的月份值。 注意: 月份为0(表示1月份)~11 0是一月

alert(oDate.getDate())  //返回本地时间的天数。

alert(oDate.getDay())   //返回日期的星期数 注:星期是从0开始的 0-6 0是周日

alert(oDate.getHour())  //返回本地时间的小时值。

alert(oDate.getMinutes())  //返回本地时间的分钟值。

alert(oDate.getSeconds())   //返回用本地时间的秒数。

alert(oDate.getMilliseconds())  //返回本地时间的毫秒值。

alert(oDate.getTime())   //返回当前时间距离1970年1月1日的毫秒数

举例:返回今天的日期

function getDay(){
           var oDate=new Date();
           return (oDate.getMonth()+1)+'/'+oDate.getDate()+'/'+oDate.getFullYear();
       }
       alert(getDay());

既然有获取,那肯定也有设置:

let oDate=new Date();
oDate.setFullYear()  //设置年份值

oDate.setMonth()     //设置月份值。 注:月份为0(表示1月份)~11 0是一月

oDate.setDate()  //设置天数。

oDate.setDay()   //设置星期数 注:0-6 0是周日
 
oDate.setHours()  //设置小时。

oDate.setMinutes() //设置分钟。

oDate.setSeconds()   //设置秒数。

oDate.setMilliseconds()  //设置毫秒。 

//注:设置年的时候 可以设置:年份 月份 日,设置小时的时候可以设置:小时 分钟 秒 毫秒
oDate.setFullYear(年,月,日)  //下面以此类推
oDate.setHours(小时,分钟,秒,毫秒)  //以此类推 

举例:求本月第一天是周几

    var oDate=new Date();
        oDate.setDate(1);
        alert(oDate.getDay());
注意:在设置天数的时候

1、多余的天数会进月
2、设置0天,上个月最后一天
3、设置负数,退月

举例:求本月有多少天

    //先变到下个月 
        //然后设置天数为0 变成   这月最后一年
        //然后获取天  也就是本月最后一天是几号就相当于本月有几天
        var oDate=new Date();
        oDate.setMonth(oDate.getMonth()+1,0);
        alert(oDate.getDate());

平时经常用到时间对象,比如说某宝的活动倒计时,商城的活动倒计时等等:

通过获取的当前时间,以及设置想要结束日期,分别获取毫秒数,使用中间的差额来做。
oDate.getTime() 获取当前时间对象中时间距离1970年1月1日的毫秒数
246060 = 86400 * 1000
求天: n/86400
求小时 n%86400/3600

   window.onload=function(){
            var oDiv=document.getElementsByTagName('div')[0];

            function show(){
                //目标时间
                var oDate=new Date();  //设置一个目标时间对象
                oDate.setFullYear(2017,9,1); //设置目标对象的年月日
                oDate.setHours(0,0,0,0); //设置目标时间的时分秒
                var targetTime=oDate.getTime(); //目标距离1970年的毫秒数
                var nowDate=new Date();
                var now=nowDate.getTime();  //现在距离1970年的毫秒数
                var s=parseInt((targetTime-now)/1000);     //现在距离目标的秒数
                var day=parseInt(s/86400);
                s=s%86400;  //把整数天除去剩下的秒数
                var h=parseInt(s/3600);
                s=s%3600;
                var m=parseInt(s/60);
                s=s%60;
                oDiv.innerHTML='距离国庆节还有'+day+'天'+h+'小时'+m+'分钟'+s+'秒';
            }
            show();
            setInterval(show,1000);
        };

以上结束。

你可能感兴趣的:(时间都去哪了,JS中时间对象Date介绍)