项目开发中遇到了计算日期的问题,在其他平台中测试正常,IOS系统异常。看了下代码
const ONE_DAY = 1000 * 60 * 60 * 24
let { reg_time } = this.data;
if (reg_time) {
return Math.floor((new Date() - new Date(reg_time)) / ONE_DAY );
}
代理请求调试定位问题后,发现ios中new Date(reg_time)弹出Invalid Date,不识别 new Date(2018-01-01)的写法。
解决方法是把- 换成/
const ONE_DAY = 1000 * 60 * 60 * 24
let { reg_time } = this.data;
if (reg_time) {
reg_time = reg_time.replace(/-/g, '/');
return Math.floor((new Date() - new Date(reg_time)) / ONE_DAY );
}
网友评论