【Javascript】 Invalid Date、NaN-NaN的问题
所写的项目中用到了判断时间是否超过了指定的时间。遇到了这样的一个问题,pc端与安卓没有问题,ios端始终无法正确相应判断。经过排查发现问题出现时间的格式上,ios端对时间格式的处理只识别(yyyy/MM/dd hh:mm:ss)不识别(yyyy-MM-dd hh:mm:ss),而后台返给我们的时间经常是后者,所有我们要对后台返回的时间做一个处理,再去判断。
function compareDate(start_time) {
/**
* @param {start_time} 开始时间
*/
if (start_time.indexOf("-") != -1) {
// 检测传入的时间格式,把'-' 换成 '/'兼容ios
var start_time = start_time.replace(/-/g, '/');
}
// 获取当前时间
var now_time = new Date();
// 转换开始时间
var start_time = new Date(start_time);
// 比较两个时间
if (now_time > start_time) {
return true;
} else {
return false;
}
}