下午在做微信小程序一个订单有效时长倒计时的功能,发现倒计时在开发者工具上面显示正常,然而在ios的真机调试的时候,莫名的显示不正确。
下面是开发者工具显示的,显示是正常的倒计时:
然后在google的时候才知道是这么个问题,ios系统不支持2018-03-29这样格式的时间导致出现的这个问题,IOS只识别2018/03/09这样的格式。那么这样也好办,正则匹配替换一下试试。
原来的是
var data = '2018-03-09 12:00:00'
var countDown = Date.parse(new Date(data ))
用正则匹配改一下
var data = '2018-03-09 12:00:00'
var format = data.replace(/-/g, '/')
var countDown = Date.parse(new Date(format))
然后再去测试一下,安卓、IOS、开发者工具也都能正常的显示了 ~ 总结一下这个问题应该就是Date.parse()在不同浏览器和设备上的偏差