new Date(date).getTime()在ios下的兼容性问题。

  • new Date(“2018-12-12 00:00:01”).getTime()获取时间戳的时候在ios下面为NaN.

经过排查发现

new Date("2018-12-12 00:00:01")
/*
*chrome浏览器以及安卓下面都可以正常输出->Wed Dec 12 2018 00:00:01 GMT+0800 (中国标准时间)
*在ios下面输出是Invalid Date。因为ios下面必须传new Date("2018/12/12 00:00:01"),这种格式的日期参数
*/
/*
*所以在ios下面就相当于是new Date("Invalid Date").getTime(),所以自然输出的结果是:NaN
*/
new Date("2018-12-12 00:00:01").getTime()//NaN
  • 解决方法

其实很简单。但是不知道的人还真会有点折腾。直接将时间格式化为“YYYY/MM/DD HH:MM:SS”即可。这里也推荐一款轻量级的日期处理工具库 date-fns,不过好像需要梯子才可以访问。

	new Date("2018/12/12 00:00:01").getTime()//完美解决。

你可能感兴趣的:(Javascript,兼容性)