本人非职业前端一枚,但是在网站开发过程中遇到兼容性问题也是要解决的。日前,bug库里惊现一时间字符串NAN-NAN-NAN,遂究其因。
bug复现:开发过程中一直是使用chrome进行调试,偶尔使用Firefox调优。看到bug图时,不得已打开了本机的ie功能,在ie11的环境下,居然还有这种问题。
第一反应是时间格式化方法有问题 ,揪着那几行js代码看了又看,调了又调,无果。
从时间参数入手,开始打印各个节点的参数,终于,new Date(time)本应是 标准时间格式,在ie下缺打印为:Invalid Date。遂找到time本身格式为yyyy-MM-dd,这在ie中是不支持的
不同的浏览器对不同的时间格式支持程度存在差异,但是有几种格式是都被支持的:
yyyy,MM,dd dd/MM/yyyy 时间戳 标准时间格式
这些初始时间格式在new Date(time)之后,皆可转化为标准时间格式。
得知如上知识,用 date=date.replace(new RegExp(/-/gm) ,"/"); 将我的时间进行转化,此问题解决。
解惑地址:https://blog.csdn.net/CopyCow/article/details/80394388