Javascript Date

new Date()    系統設置的當前時間來創建一個Date對象


測試時間2019-03-08/當前機器時區東八時區

new Date("2019-03-08") 

Fri Mar 08 2019 08:00:00 GMT+0800 (中國標準時間) 

getTime() 1552003200000  相當於如果utc爲3月8號的凌晨,那麼當前測試的時候已經八點了

new Date("2019-03-08 00:00:00") 得出的是當前時區凌晨


Date構造函數的參數

new Date()

new Date(timestamp)

new Date('December 17, 1995 03:24:00')

new Date('2019-03-08')   

new Date('2019/03/08')

new Date('2019-03-08 12:12:12') 如果是在safari中,得用new Date('2019/03/08 12:12:12')

new Date(2019, 03, 08)   爲了避免2000年問題最好指定4位數的年份; 使用 1998, 而不要用 98. 月份從0到11

new Date(2019, 03, 08, 12, 12, 12);


當Date作爲構造函數調用並傳入多個參數時,如果數值大於合理範圍時(如月份爲13或者分鐘數爲70),相鄰的數值會被調整。比如 new Date(2013, 13, 1)等於new Date(2014, 1, 1),它們都表示日期2014-02-01(注意月份是從0開始的)。其他數值也是類似,new Date(2013, 2, 1, 0, 70)等於new Date(2013, 2, 1, 1, 10),都表示時間2013-03-01T01:10:00


當Date作爲構造函數調用並傳入多個參數時,所定義參數代表的是當地時間。如果需要世界協調時,使用 new Date({{jsxref("Date.UTC()", "Date.UTC(...)")}}) 和相同參數


JavaScript的時間是由世界標準時間(UTC)1970年1月1日開始,用毫秒計時,一天由86,400,000毫秒組成。Date對象的範圍是-100,000,000天至100,000,000天(等效的毫秒值)


以一個函數的形式來調用JavaScript的Date對象(i.e., 不使用 new 操作符)會返回一個代表當前日期和時間的字符串



Date.now  === new Date().getTime()

new Date("2019-03-08").getTime()   ===  Date.parse("2019-03-08") === Date.UTC(2019, 02, 08)  === 1552003200000  

如果是在UTC之前時區,得到得是2019-03-07

getUTCDate 獲取的是相當於UTC日期的時間,比如new Date("2019-03-08"),在UTC之前用getDate獲取的是7,之後是8,但是getUTCDate都是8


toISOString()會轉成對應的UTC時間,去掉對應的時區信息

比如new Date("2019-03-08").toISOString() === "2019-03-08T00:00:00.000Z" 

new Date("2019-03-08 12:12:12").toISOString() === "2019-03-08T04:12:12.000Z"

new Date("2019-03-08 00:00:00").toISOString() === "2019-03-07T16:00:00.000Z"


toLocaleDateString 默認使用運行時(機器)時區

new Date("2019-03-08").toLocaleDateString()  === 2019/3/8

new Date("2019-03-08").toLocaleDateString("en-US",{timeZone:"America/New_York"})  === 3/7/2019

new Date("2019-03-08 00:00:00").toLocaleDateString("en-US",{timeZone:"America/New_York"})  === 3/7/2019

new Date("2019-03-08").toLocaleDateString("en-US",{timeZone:"Asia/Kolkata"}) === 3/8/2019

new Date("2019-03-08 00:00:00").toLocaleDateString("en-US",{timeZone:"Asia/Kolkata"})  === 3/7/2019


toUTCString

new Date("2019-03-08").toUTCString() ===  Fri, 08 Mar 2019 00:00:00 GMT


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章