IOS的 new Date()格式化问题

  最近要做一个商品的抢购活动,需要用到后台返回的时间和当前时间的对比。在Chrome上已经完美的完成了,但是在ios的浏览器中new Date()对象遇到了大坑。

  

var date = ‘2017-08-23 15:42:07.0‘;

android:

new Date(date)

返回  Wed Aug 23 2017 15:42:07 GMT+0800 (中国标准时间)

ios:

new Date(date)

返回 Invalid Date  

原因是 不能将含有‘-‘的时间字符串转成时间。

解决办法是:

new Date( date.replace(/\-/g, '/') )

返回 Invalid Date 

原因是 ‘.0‘表示的毫秒不能转

解决办法是:

new Date(date.replace(/\-/g, '/').replace('.0', ''))

最后返回 Wed Aug 23 2017 15:42:07 GMT+0800 (中国标准时间)

 

这样就搞定了。。。。

 

最后还有个注意的点,

var currentTime = new Date();
currentTime .getMonth(),得到的月份从0开始算。

 

  

posted @ 2017-08-31 18:29  krypon7758  阅读(453)  评论(0编辑  收藏  举报