JS基礎入門篇(十八)—日期對象

1.日期對象

日期對象:函數

經過new Date()就能建立一個日期對象,這個對象中有當前系統時間的全部詳細信息。

如下代碼能夠獲取當前時間:code

<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到目前日期對象的時間差(單位:毫秒))

如下代碼,能夠把註釋打開,查看效果:ip

<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到目前日期對象的時間差(單位:毫秒)

設置詳細時間:get

setFullYear() 設置年
    setMonth() 設置月 (月份從0開始計算)
    setDate() 設置日
    setHours() 設置小時
    setMinutes() 設置分鐘
    setSeconds() 設置秒鐘
    setMilliseconds() 設置毫秒
    setTime() 設置1970-01-01 00:00:00到目前日期對象的時間差(單位:毫秒)

注意:io

設置日期對象的時候只是在操做這個對象,沒有操做本機的系統時間

4.字符時鐘

點擊查看字符時鐘效果console

如下是字符時鐘代碼:function

<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.計算這個月有多少天的三種方式

方式一:im

<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>
相關文章
相關標籤/搜索