需求:后台返回一个时间,前端需要转换为时间戳再使用
后台可能返回的时间格式有:
格式一:time = "Wed Jun 10 2021 15:00:00 GMT+0800"
格式二:time = "2021/06/10 15:00:00"
格式三:tiem = "2021-06-10 15:00:00"
格式一或格式二:
直接使用:new Date( time ).getTime(); // 结果为:1623308400000
上面的等效方法:new Date( time ).valueOf() 和 +new Date( time )
格式三:
格式三在Safari浏览器(移动端和PC端)上会出现错误结果:NaN。格式三要在所有浏览器出现正确结果,则需要进行转换:
new Date( time.replace(/-/g, '/') ).getTime(); // 结果为:1623308400000
测试正常的浏览器:Safari浏览器(移动端和PC端)、Chrome浏览器、QQ浏览器、小米浏览器、微信等等。