javascript之Date

 JSON 日期轉 JS日期,我們知道,日期類型轉成JSON之後,返回的數據類似這樣:

  /Date(1379944571737)/

  但是這種日期並不能直接顯示,因爲根本沒有人知道這是什麼意思,下面提供一種JSON日期轉JS日期的方式。

function ConvertJSONDateToJSDate(jsondate) {
    var date = new Date(parseInt(jsondate.replace("/Date(", "").replace(")/", ""), 10));
    return date;
}

  在提供兩種Date轉習慣視覺的日期格式:

複製代碼
//yyyy-MM-dd
function getDate(date) {
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var day = date.getDate();
    return year + "-" + month + "-" + day ;
}
//yyyy-MM-dd HH:mm:SS
function getDateTime(date) {
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var day = date.getDate();
    var hh = date.getHours();
    var mm = date.getMinutes();
    var ss = date.getSeconds();
    return year + "-" + month + "-" + day + " " + hh + ":" + mm + ":" + ss;
}
複製代碼

將一個字符串轉換爲Date對象的寫法:

        var str = "2012-12-12";
        var date = new Date(str);  //字符串轉換爲Date對象
        document.write(date.getFullYear());  //然後就可以使用Date對象的方法輸出年份了

一、Date.getDate()  返回是日期對象中月份中的幾號。

        var date = new Date();  //2012-12-19
        document.write(date.getDate());  //返回  19 是19號

二、Date.getDay()  返回日期中的星期幾  星期天0-星期6

        var date = new Date();
        document.write(date.getDay());  //3 星期3

三、Date.getFulYead()  返回年份  如2012。

        var date = new Date();
        document.write(date.getFullYear());  //返回2012,2012年

四、Date.getHours()  返回日期中的小時,幾點了,0-23

        var date = new Date();
        document.write(date.getHours());  //返回23,晚上11點

五、Date.getMilliseconds()  返回日期中的毫秒數

        var date = new Date();
        document.write(date.getMilliseconds());  //返回27  當前是xx年,xx月,xx點,xx分,xx秒,xx毫秒的毫秒

六、Date.getMinutes()    返回日期中的分鐘數  0-59

        var date = new Date();
        document.write(date.getMinutes());  //2012-12-19 23:22  返回22,12點22分

七、Date.getMonth()      //返回日期中的月份數,返回值0(1月)-11(12月)

        var date = new Date();
        document.write(date.getMonth());  //2012-12-19  此處返回11,注意此處與通常理解有些偏差,1月份返回是0,12月返回是11

八、Date.getSeconds()    //返回一個日期的描述

        var date = new Date();
        document.write(date.getSeconds());·//返回34,2012-12-19 23:27:34  27分34秒

九、Date.getTime()      //將一個日期對象以毫秒形式返回

        var date = new Date();
        document.write(date.getTime());  //返回1355930928466  返回值是1970-01-01 午夜到當前時間的毫秒數。

十、Date.getTimezoneOffset()   //GMT時間與本地時間差,用分鐘表示

        var date = new Date();
        document.write(date.getTimezoneOffset());  //返回-480  實際上這個函數獲取的是javascript運行於哪個時區。單位是分鐘。

十一、Date.getUTCDate()    //返回Date對象中的日期值,(全球時間)

        var date = new Date();
        document.write(date.getUTCDate());  //返回19  19號

十二、Date.getUTCDay()     //返回Date對象中的星期幾,(全球時間)

        var date = new Date();
        document.write(date.getUTCDay());  //返回3  星期3

 十三、Date.getUTCFullYear()  //返回Date中的年份,4位,如2012,(全球時間)

        var date = new Date();
        document.write(date.getUTCFullYear());  //返回2012

十四、Date.getUTCHours()    //返回Date對象中的小時數,就是現在是幾點,終於有一個跟getHours()不同了,應該是時差關係,返回的是全球時間裏的。

        var date = new Date();
        document.write(date.getUTCHours());  //現在北京時間是2012-12-19 23:44,但是返回的是15,也就是全球時間中的小時數。

十五、Date.getUTCMilliserconds()  //返回Date對象中的毫秒數,(全球時間)

        var date = new Date();
        document.write(date.getMilliseconds());  //返回全球時間中的毫秒數

十六、Date.getUTCMinutes()    //返回Date對象中的分鐘數,(全球時間)

        var date = new Date();
        document.write(date.getMinutes());  //2012-12-19 23:49  返回49,注意是全球時間,其實全球時間應該就小時不同而已吧。

十七、Date.getUTCMonth()      //返回Date對象中月份值,(全球時間)

        var date = new Date();
        document.write(date.getMonth());  //2012-12-19  返回11,0(1月份)-11(12月份)  

十八、Date.getUTCSeconds()    //返回Date對象中的秒數值

        var date = new Date();
        document.write(date.getSeconds());  //返回秒數值 返回33

十九、Date.getYear()    //返回Date對象中的年份值減去1900

        var date = new Date();
        document.write(date.getYear());  //2012-12-19  返回112 (2012-1900)

二十、Date.now()    靜態方法  //返回1970-01-01午夜到現在的時間間隔,用毫秒錶述

     document.write(Date.now());  //靜態方法,返回當前時間與1970-01-01的時間間隔,毫秒單位。

二十一、Date.parse()    //解析一個日期時間字符串,返回1970-01-01午夜到給定日期之間的毫秒數

        var date = "2012-12-19";
        document.write(Date.parse(date));  //返回  1355875200000
        var da = new Date(date);
        document.write("<br/>" + da.getFullYear() + "-" + da.getMonth() + "-" + da.getDate());  //輸出2012-11-19  //注意月份是從0-11

二十二、Date.setDate()  //設置一個Date對象中的日期值,返回值用調整後的日期的毫秒錶示

        var date = new Date();
        document.write(date.setDate(11));  //返回1355236647980    //設置爲11,其實是12月,設置爲3其實是4月
     var da = new Date(date);
        document.write("<br/>" + da.getFullYear() + "-" + da.getMonth() + "-" + da.getDate()); //輸出2012-11-11  //注意月份是從0-11,設置的時候要注意

 二十三、Date.setFullYear()  //設置一個Date對象中的年份,返回值用調整後的日期的毫秒錶示。

        var date = new Date();  今天是2012-12-20
        document.write(date.setFullYear(1989)); //返回630167981030
        var da = new Date(date);
        document.write("<br/>" + da.getFullYear() + "-" + da.getMonth() + "-" + da.getDate()); //輸出1989-11-20

二十四、Date.setHours()  //設置一個Date對象中的小事數,返回值用調整後的日期的毫秒錶示。

        var date = new Date();      //現在是2012-12-52 22:52
        document.write(date.setHours(5)); //返回1355954000882
        var da = new Date(date);
        document.write("<br/>" + da.getHours()); //輸出05

二十五、Date.setMilliseconds()  //設置一個日期的毫秒數

        var date = new Date();      //現在是2012-12-20
        document.write(date.setMilliseconds(22)); //返回1356015393022    注意最後兩位,無論如何刷新都是22

二十六、Date.setMinutes()    //設置一個日期的分鐘數

        var date = new Date();      //現在是2012-12-52 22:52
        document.write(date.setMinutes(1)); //返回1356012067105
        var da = new Date(date);
        document.write("<br/>" + da.getMinutes()); //輸出1

二十七、Date.setMonth()      //設置一個日期的月份數

        var date = new Date();      //現在是2012-12-20
        document.write(date.setMonth(2)); //返回1332255597722
        var da = new Date(date);
        document.write("<br/>" + da.getMonth()); //輸出2

二十八、Date.setSeconds()      //設置一個日期的描述

     語法:date.setSeconds(seconds)

        date.setSeconds(seconds,millis)

        var date = new Date();      //現在是2012-12-20
        document.write(date.setSeconds(3)); //返回1356015783872
        var da = new Date(date);
        document.write("<br/>" + da.getSeconds()); //輸出3

二十九、Date.setTime()        //使用毫秒數設置一個時間

      語法:date.setTime(milliseonds)

        var date = new Date();      //現在是2012-12-20
        document.write(date.setTime(1356015783872)); //返回1356015783872
        var da = new Date(date);
        document.write("<br/>" + da.getDate()); //輸出20

三十、Date.setUTCDate()        //設置一個Date對象中對應月的日期值,就是幾號(全球時間)

      語法:date.setUTCDate(day-of-month)

        var date = new Date();      //現在是2012-12-20
        document.write(date.setUTCDate(12)); //返回1355324952003
        var da = new Date(date);
        document.write("<br/>" + da.getDate()); //輸出12

三十一、Date.setUTCFullYear()     //設置一個Date對象中對應的年份,全球時間

      語法:date.setUTCFullYear(year)

         date.setUTCFullYear(year,month)

         date.setUTCFullYear(year,month,day)

        var date = new Date();      //現在是2012-12-20
        document.write(date.setUTCFullYear(1999)); //返回945702713666
        var da = new Date(date);
        document.write("<br/>" + da.getFullYear()); //輸出1999 

三十二、Date.setUTCHours()      //設置一個Date對象中對應的小時數,(全球時間)

      語法:date.setUTCHours(hours)

           date.setUTCHours(hours,minutes)

         date.setUTCHours(hours,minutes,seconds)

         date.setUTCHours(hours,minutes,seconds,millis)

        var date = new Date();      //現在是2012-12-20
        document.write(date.setUTCHours(05)); //返回1355980581928
        var da = new Date(date);
        document.write("<br/>" + da.getUTCHours()); //輸出5 

三十三、Date.setUTCMilliseconds()  //設置一個Date對象中對應的毫秒數,(全球時間)

      語法:date.setUTCMilliseconds(millis)

        var date = new Date();      //現在是2012-12-20
        document.write(date.setMilliseconds(05)); //返回1356016784005  注意此處無論如何刷新都是05結尾

三十四、Date.setUTCMinutes()    //設置一個Date對象的分鐘、秒鐘、以及毫秒值。

      語法:date.setUTCMinutes(minutes)

date.setUTCMinutes(minutes,seconds)

date.setUTCMinutes(minutes,seconds,millis)

        var date = new Date();      //現在是2012-12-20
        document.write(date.setUTCMinutes(25)); //返回1356017146549
        var da = new Date(date);
        document.write("<br/>" + da.getUTCMinutes()); //輸出5 

三十五、Date.setUTCMonth()    //設置一個Date對象的月份值及日期值

        語法:date.setUTCMonth(month)

          date.setUTCMonth(month,day)

        var date = new Date();      //現在是2012-12-20
        document.write(date.setMonth(01)); //返回1329751527983
        var da = new Date(date);
        document.write("<br/>" + da.getUTCMonth()); //輸出1 

三十六、Date.setUTCSeconds()    //設置一個Date的秒鐘及毫秒值

      語法:date.setUTCSeconds(seconds)

         date.setUTCSeconds(seconds,millis)

        var date = new Date();      //現在是2012-12-20
        document.write(date.setUTCSeconds(01)); //返回1356017281976
        var da = new Date(date);
        document.write("<br/>" + da.getUTCSeconds()); //輸出1 

三十七、Date.setYears()      //設置一個Date對象的年份值,如果給的參數在0-99之間,它將會加上1900以便把它當中1900-1999之間的年份處理。如果輸入4位數                    則把它當成FullYear設置

      語法:date.setYears(year)

        var date = new Date();      //現在是2012-12-20
        document.write(date.setYear(22)); //返回1356017281976
        var da = new Date(date);
        document.write("<br/>" + da.getFullYear()); //輸出1922
        var date = new Date();      //現在是2012-12-20
        document.write(date.setYear(2011)); //返回1324395113386
        var da = new Date(date);
        document.write("<br/>" + da.getFullYear()); //輸出2011

三十八、Date.toDateString()    //以字符串的形式返回一個Date的日期部分

     語法:date.toDateString()

        var date = new Date();      //現在是2012-12-20
        document.write(date.toDateString("yyyy-MM-dd")); //返回Thu Dec 20 2012 

三十九、Date.toTimeString()    //以字符串的形式返回一個Date的時間部分

     語法:date.toTimeString()

        var date = new Date();      //現在是2012-12-20
        document.write(date.toTimeString("yyyy-MM-dd")); //返回23:38:33 GMT+0800 

 四十、Date.toISOString()      //將一個Date對象轉換爲ISO-8601格式的字符串

     語法;date.toISOString()  //返回的字符串格式爲yyyy-mm-ddThh:mm:ssZ

        var date = new Date();      //現在是2012-12-20
        document.write(date.toISOString()); //返回2012-12-20T15:45:47.493Z 

四十一、Date.toJSON       //JSON序列化一個對象

     語法:date.toJSON(key)  //date的一個字符串表示形式,值爲調用它的toISOString()方法的結果

        var date = new Date();      //現在是2012-12-20
        document.write(date.toJSON()); //返回2012-12-20T15:45:47.493Z 

四十二、Date.toLocaleDateString()  //以本地格式的字符串返回一個Date的日期部分

     語法:date.toLolcaleDateString  //返回一個本地人可讀的日期格式,日期部分

        var date = new Date();      //現在是2012-12-20
        document.write(date.toLocaleDateString()); //返回2012年12月20日

 四十三、Date.toLocaleString()    //將一個Date轉化難爲一個本地格式的字符串

     語法:date.toLocaleString()

        var date = new Date();      //現在是2012-12-22
        document.write(date.toLocaleString()); //返回2012年12月22日 19:56:40 

四十四、Date.toLocaleTimeString()    //將一個Date轉化爲本地的格式的時間部分

        var date = new Date();      //現在是2012-12-22
        document.write(date.toLocaleTimeString()); //返回19:57:23 

四十五、Date.toString()          //將一個Date轉換爲一個字符串

        var date = new Date();      //現在是2012-12-22
        document.write(date.toString()); //返回Sat Dec 22 2012 19:59:17 GMT+0800 

四十六、Date.toTimeString()       //以字符串的形式返回一個Date對象的時間部分

        var date = new Date();      //現在是2012-12-22
        document.write(date.toString()); //返回Sat Dec 22 2012 19:59:17 GMT+0800 

四十七、Date.toUTCString()       //將一個Date對象轉換爲字符串(全球時間)

        var date = new Date();      //現在是2012-12-22
        document.write(date.toUTCString()); //返回Sat, 22 Dec 2012 12:00:42 GMT 

四十八、Date.UTC()           //將一個Date對象轉換毫秒的形式  靜態方法

      語法:Date.UTC(year,month,day,hours,minutes,seconds,ms)

    document.write(Date.UTC(2011, 11, 11, 11, 11, 11)); //返回1323601871000 

四十九、Date.valueOf()         //如果是一個Date對象,將一個Date對象轉爲毫秒的形式,否則不顯示

        var date = "";
        document.write(date.valueOf());    //不是Date對象,不輸出
        var date1 = new Date();
        document.write(date1.valueOf());   //輸出1356180400916 


發佈了19 篇原創文章 · 獲贊 2 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章