谨记:new Date()在IOS中的坑

第一次遇到,记录一下

要创建一个指定时间的new Date对象时,通常的做法是:

new Date("2018-04-27 11:11");然后就可以根据这个获取年月日等信息

这种格式在chrome,firefox,Android中都没有问题。。。。。。但是,但是,但是在IOS中就出问题了,该对象返回的是valid Date??????为什么会返回这个值,这不是有效的意思吗。。。。

结果发现。。。在IOS中,new Date中指定的字符串还有格式。。。

new Date("2018/04/27 11:11"),这样才能正确返回结果。。。。。。。。。。。

Safari和IE没有测试过,不知道是否也会出现这种问题,如果有类似情况出现,那么可以用下面的方法来解决

var obj=new Date("2018-04-27 11:11").replace(/-/g, "/");

毕竟 在new Date里面的2018/04/27 这种格式在其它浏览器中也支持。。。。。。

 

还有,在安卓和IOS上的微信中的浏览器内核是不一样的,这也会导致上面的安卓和IOS中new Date的差别:

  安卓6.1版本以上都是使用QQ浏览器的X5内核,5.4-6.1之间的版本如果安装了QQ浏览器的话就是使用X5内核,如果没安装,就是使用的系统内核

  IOS有两种,一种是WKWebview,一种是UIWebview,从IOS8版本开始支持WKWebview