关于ios系统上的浏览器new date() 返回invalid time或者nan等问题

最近写秒杀模块遇到一个问题,项目在pc浏览器各种调试没有问题,换手机时间部分显示异常,经过不断调试,是使用new Date()返回的时间不正常
苹果貌似不支持 时间格式为2019-12-7 09:25:24的格式,但是经过转换成2019/12/7 09:25:24就显示正常了
话不多说,看实际案例

var that = this;
//将时间格式中的‘-’转换成‘/’,不转换ios中会出现异常
      that.endTime=that.endTime.replace(new RegExp(/-/gm) ,"/");
      var interval = setInterval(function timestampToTime() {
        var date = new Date(that.endTime) - new Date();
        if (date > 0) {
          let time = date / 1000;
          // 获取时、分、秒
          that.hou =
            parseInt(time / 3600) < 10
              ? "0" + parseInt(time / 3600)
              : parseInt(time / 3600);
          that.min =
            parseInt(((time % (60 * 60 * 24)) % 3600) / 60) < 10
              ? "0" + parseInt(((time % (60 * 60 * 24)) % 3600) / 60)
              : parseInt(((time % (60 * 60 * 24)) % 3600) / 60);
          that.sec =
            parseInt(((time % (60 * 60 * 24)) % 3600) % 60) < 10
              ? "0" + parseInt(((time % (60 * 60 * 24)) % 3600) % 60)
              : parseInt(((time % (60 * 60 * 24)) % 3600) % 60);
          that.stratHour= parseInt((new Date(that.startTime).getHours()))
      
         
        } else {
          //活动已结束,全部设置为'00'
          (that.hou = "00"), (that.min = "00"), (that.sec = "00");
        }
      }, 1000);

希望对大家有用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值