关于ios:IOS下new-Date20200909-hhmmss报错

34次阅读

共计 447 个字符,预计需要花费 2 分钟才能阅读完成。

场景

后端返回了一个工夫字符串,形如:'2020-09-09 hh:mm:ss',而后前端业务须要判断以后工夫是否大于 / 小于这个工夫,于是就有了这样一个比拟:

let date = new Date()
if(date < new Date(res.endTime) && date > new Date(res.startTime)) {// do something}

然而这在安卓上运行失常,可是测试的时候在 IOS 上报错了。查阅一番得悉,IOS不反对这种格局 '2020-09-09 hh:mm:ss'new Date(),它只反对 '2020/09/09 hh:mm:ss' 这样的,而安卓下应用 new Date() 则两种格局都反对。

解决

把后端返回的工夫格局转换一下,把 '-' 替换成'/'

// ios 下 - 工夫格式化不了,ios 下把 - 替换为 /
export function initIosTime (val) {if (isIOS()) {return val.replace(/\-/g, '/').replace('.0', '')
  }
  return val
}

正文完
 0