1. 程式人生 > >使用moment.js輕鬆管理日期和時間

使用moment.js輕鬆管理日期和時間

moment.js不依賴任何第三方庫,支援字串、Date、時間戳以及陣列等格式,可以像PHP的date()函式一樣,格式化日期時間,計算相對時間,獲取特定時間後的日期時間等等,本文有如下舉例。

格式化日期

當前時間:

moment().format('YYYY-MM-DD HH:mm:ss'); //2014-09-24 23:36:09 

今天是星期幾:

moment().format('d'); //3 

轉換當前時間的Unix時間戳:

moment().format('X'); 

相對時間

20120901相對當前日期是2年前

moment("20120901""YYYYMMDD").fromNow(); //2 years ago
 

7天后的日期:

moment().add('days',7).format('YYYY年MM月DD日'); //2014年10月01日 

9小時後的時間:

moment().add('hours',9).format('HH:mm:ss'); 

moment.js提供了豐富的說明文件,使用它還可以建立日曆專案等複雜的日期時間應用。我們日常開發中最常用的是格式化時間,下面我把常用的格式製作成表格說明供有需要的朋友檢視:

格式程式碼 說明 返回值例子
M 數字表示的月份,沒有前導零 1到12
MM 數字表示的月份,有前導零 01到12
MMM 三個字母縮寫表示的月份 Jan到Dec
MMMM 月份,完整的文字格式 January到December
Q 季度 1到4
D 月份中的第幾天,沒有前導零 1到31
DD 月份中的第幾天,有前導零 01到31
d 星期中的第幾天,數字表示 0到6,0表示週日,6表示週六
ddd 三個字母表示星期中的第幾天 Sun到Sat
dddd 星期幾,完整的星期文字 從Sunday到Saturday
w 年份中的第幾周 如42:表示第42周
YYYY 四位數字完整表示的年份 如:2014 或 2000
YY 兩位數字表示的年份 如:14 或 98
A 大寫的AM PM AM PM
a 小寫的am pm am pm
HH 小時,24小時制,有前導零 00到23
H 小時,24小時制,無前導零 0到23
hh 小時,12小時制,有前導零 00到12
h 小時,12小時制,無前導零 0到12
m 沒有前導零的分鐘數 0到59
mm 有前導零的分鐘數 00到59
s 沒有前導零的秒數 1到59
ss 有前導零的描述 01到59
X Unix時間戳 1411572969