處理日期格式是日常工作中的常事昭躺,我們經(jīng)常會對日期字符串和日期對象之間進行轉(zhuǎn)換忌锯。今天在IE
瀏覽器就踩了這么一個日期轉(zhuǎn)換的坑。
new Date()的坑
后端返回的日期字符串格式為:yyyy-MM-dd HH:mm:ss
领炫,看到這個格式偶垮,大部分人都會覺得這應(yīng)該是標(biāo)準(zhǔn)格式吧,我也是這么認(rèn)為的帝洪,覺得沒有任何兼容問題似舵。轉(zhuǎn)換語句如下:
var str2DateObj = new Date('2019-11-04 10:10:10')
console.log(str2DateObj)
// 輸出:VM796:2 Mon Nov 04 2019 10:10:10 GMT+0800 (中國標(biāo)準(zhǔn)時間)
但是IE
就是這么diao
,我就不支持這個格式葱峡。
var str2DateObj = new Date('2019-11-04 10:10:10')
console.log(str2DateObj)
[date] Invalid Date[date] Invalid Date
解決方案
自行解析
將得到的日期字符串進行拆分解析砚哗,分別得到年月日時分秒,然后再new Date
// 注意砰奕,月是從0開始的
new Date(2019, 10, 4, 10, 10, 10)
借助外力
正好項目也用了moment
這個日期時間庫蛛芥,那就交給它處理吧。
// no problem
moment('2019-11-04 10:10:10')
掃一掃下方小程序碼或搜索Tusi博客
军援,即刻閱讀最新文章仅淑!
Tusi博客