JavaScript Date parse()

Date 的 parse() 方法用來將日期時間字串轉成一個數字,這數字表示從 1970-01-01 00:00:00 UTC (格林威治標準時間) 開始累計到現在的毫秒數 (milliseconds)。

語法:

Date.parse(dateString)

時間日期字串格式要符合 RFC2822ISO 8601 date 標準,如果是無效的格式會返回 NaN

parse() 底層其實是執行 new Date(dateString)

用法:

YYYY-MM-DD

// 1462838400000
Date.parse('2016-05-10');

特別注意在有些瀏覽器,如果你月或日只有個位數,但沒有補 0 可能會發生錯誤,例如 1 需要寫成 01

YYYY-MM (DD 日預設為 1)

// 1462060800000
Date.parse('2016-05');

YYYY (MM-DD 月日預設為 1)

// 1451606400000
Date.parse('2016');

YYYY-MM-DDTHH:MM:SS

// 1480077000000
Date.parse('2016-11-25T12:30:00');

T 在日期和時間之間,表示是 UTC 時間。

UTC (Coordinated Universal Time, 世界協調時間) 跟 GMT (Greenwich Mean Time, 格林威治標準時間) 是一樣的。

MM/DD/YYYY

// 1462809600000
Date.parse('05/10/2016');

MMM DD YYYY, DD MMM YYYY

// 1478707200000
Date.parse('Nov 10 2016');
// 1478707200000
Date.parse('10 Nov 2016');

月份也可以寫全名,而且月份大小寫沒差,逗點會被忽略:

// 1478707200000
Date.parse('NovemBER, 10, 2016');

或使用 JavaScript 完整的日期時間文字格式:

// 1481378970000
Date.parse('Sat Dec 10 2016 22:09:30 GMT+0800 (CST)');

// 1481378970000
Date.parse('Sat Dec 10 2016 22:09:30 GMT+0800');