场景
后端返回了一个工夫字符串,形如:'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
}