苹果手机new Date()时候的坑 ios new Date时为NAN
程序员文章站
2022-09-05 10:49:37
苹果手机new Date()时候的坑最近开发H5小游戏,有一个游戏活动倒计时,后端给我提供活动结束时间为(2021-01-13 12:00:00)这种格式,我需要获取当前本地时间,用倒计时时间减去当前时间,那么我得先转为时间戳,我先将后端返回的时间通过new Date("2021-01-13 12:00:00") 复原,在使用getTime()转为时间戳,再将我们当前时间转为时间戳,通过结束时间的时间戳减去当前时间的时间戳,获得相差的时间,在转为 时分秒(01:15:10)。在电脑端f12正常....
苹果手机new Date()时候的坑
最近开发H5小游戏,有一个游戏活动倒计时,后端给我返回的活动结束时间为(2021-01-13 12:00:00)这种格式,我需要获取当前本地时间,用活动结束时间减去当前时间,那么我得先转为时间戳,我先将后端返回的时间通过 new Date("2021-01-13 12:00:00") 复原,在使用getTime()转为时间戳,再将我们当前时间转为时间戳,通过结束时间的时间戳减去当前时间的时间戳,获得相差的时间,在转为 时分秒(01:15:10)。
在电脑端f12正常测试没问题,安卓也没问题,但是到ios端相减后的结果为NAN,就一处一处寻找,最终找到问题所在,ios和安卓不一样,ios不支持 2021-01-03这种,需要将“-”换为“/”即可。
方案如下,直接正则替换即可
new Date("2021-01-13 12:00:00".replace(/-/g, "/"));
替换完成之后,就可以正常使用,完美解决了问题。
原文围观地址 http://sharedblog.cn/post/214.html
本文地址:https://blog.csdn.net/tianpeng1996/article/details/112582287