不一樣的日期、時間轉換(moment.js)


  無意中遇到了一種很奇怪的日期格式,從接口中返回的日期是這樣的,如 2018-02-06T11:59:22+08:00 。然而這卻不是我們想要的,我們要的是這種,YYYY-MM-DD HH:mm:ss。

  那么這種是怎么轉換的呢?

  這時候就可以使用一款很好用的日期、時間處理工具,moment.js。

  對於moment.js,可以直接使用 CDN加速服務中的moment.js(moment.js),引入moment.js文件便可以開始使用了

(如:<script src="https://cdn.bootcss.com/moment.js/2.20.1/moment.js"></script>)。

 

  或者使用npm安裝到本地(npm install moment),然后使用的時候像這樣

   var moment = require('moment'); moment().format(); 

  舉幾個常見用法:

  (1)、返回當前的日期時間。  

moment().format('YYYY-MM-DD HH:mm:ss')  // 2018-02-06 10:53:00

  

  (2)、返回當前星期幾

moment().format('d') // 2,表示星期二,其中1-6表示周一到周六,0表示周日

  

  (3)、返回指定日期距離當前日期有多久

moment('20180125','YYYYMMDD').fromNow() // 12 days ago

  

  (4)、返回幾天后的日期

moment().add('days',7).format('YYYY年MM月DD日') // 表示7天后的日期

   然而在瀏覽器會有這樣的提示:Deprecation warning: moment().add(period, number) is deprecated. Please use moment().add(number, period)。意思是不贊成使用這種方式,推薦使用另一種方式moment().add(number, period)。

  因此,上面那種寫法應該改為:

moment().add(7,'days').format('YYYY年MM月DD日') // 可以寫days,也可寫day

  

  (5)、返回10小時后的日期

moment().add(10, 'hours').format('YYYY年MM月DD日 HH:mm:ss') // 2018年02月06日 21:07:18。同樣的可寫hour,也可寫hours

  

  (6)、返回10年后的日期

moment().add(10, 'years').format('YYYY年MM月DD日 HH:mm:ss') // 可寫year,也可寫years

  

  現在回過頭來說說2018-02-06T11:59:22+08:00這種格式的轉換。

  引入moment.js文件

  <script src="https://cdn.bootcss.com/moment.js/2.20.1/moment.js"></script>

  然后 moment('2018-02-06T11:59:22+08:00').format('YYYY-MM-DD HH:mm:ss')就over了。

 

  常用的時間格式如下:    

格式代碼 說明 返回值例子
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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM