Moment format踩過的坑


背景

項目應用的地方存在夏令時,這就要求程序中存儲和使用的時間格式為UTC,所以在調用接口時存在將本地時間轉成UTC時間格式以及獲取接口數據后將UTC時間轉換成本地時間顯示的兩個動作。

遇到的坑

moment格式化分為local和utc兩種,分別對應defaultFormatdefaultFormatUtc,需要注意moment轉成utc后再使用format,就會使用defaultFormatUtc對應的格式。

詳解

moment(local)

默認時間格式defaultFormatYYYY-MM-DDTHH:mm:ssZ,所以

moment('2020-08-24 08:00:00').format(); 	//2020-08-24T08:00:00+08:00

moment(local)自定義defaultFormat

通過moment.defaultFormat='YYYY-MM-DD HH:mm:ss'設置默認格式為'YYYY-MM-DD HH:mm:ss',所以

moment('2020-08-24 08:00:00').format(); 	//2020-08-24 08:00:00

moment(utc)

默認UTC時間格式defaultFormatUtcYYYY-MM-DDTHH:mm:ss[Z],所以

moment('2020-08-24 08:00:00').utc().format();	//2020-08-24T00:00:00Z

moment(utc)自定義defaultFormatUtc

通過moment.defaultFormatUtc='YYYY-MM-DDTHH:mm:ss.SSS[Z]'設置默認格式為'YYYY-MM-DDTHH:mm:ss.SSS[Z]',所以

moment('2020-08-24 08:00:00').utc().format(); 	//2020-08-24T00:00:00.000Z

官方文檔


免責聲明!

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



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