乐趣区

关于chrome:safari浏览器关于时间格式的兼容问题

前两天写一个折线图,测试发现在 safari 浏览器有 bug,排查了半天,发现是 Safari 对工夫格局解决有问题。

论断

先说论断,咱们常常用的工夫格局 YYYY-MM-DD HH:mm:ss 在 Safari 浏览器中是不反对的。
chrome 浏览器中:

能够看到 new Date 能够正确辨认该格局的工夫。再看在 safari 浏览器中:

思考

原生的 Date 对象不反对,那试下第三方插件是否有兼容这个格局,试了下常见的 moment.js 插件,成果如下:

发现是能够反对的。
居然是能够反对的,如我下面所说,我前两天是遇到过这个问题的,而且我过后就是用的 moment,没想到明天再试居然能够了。我排查了下,用了旧的 moment.js 的包,也能够了,那就是当初的 Safari 浏览器更新了版本后,moment.js 反对了,然而原生 new Date 还是不反对。所以倡议还是不要间接在 Safari 中应用。

解决办法

我感觉最好的解决办法就是把 YYYY-MM-DD HH:mm:ss 格局的代码转为 YYYY/MM/DD HH:mm:ss,这是 safari 浏览器反对的格局。

"2021-11-11 11:11:11".replace(/-/g, '/')

好了,就这样 -_-!

退出移动版