概述
使用下面代码前必须确保传入的参数格式为:yyyy-MM-dd HH:mm:ss
下面是判断字符串是否为上述日期格式的正则表达式
var reg = /^[1-9]d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])s+(20|21|22|23|[0-1]d):[0-5]d:[0-5]d$/;
var regExp = new RegExp(reg);
if (!regExp.test(logintime)) {
alert("登录时间格式不正确,正确格式为: 2000-01-01 12:00:00 ");
return;
}
//比较日期,时间大小
function compareCalendar(logintime, logouttime) {
if (logintime.indexOf(" ") != -1 && logouttime.indexOf(" ") != -1) {
//包含时间,日期
return compareTime(logintime, logouttime);
}
else {
//不包含时间,只包含日期
return compareDate(logintime, logouttime);
}
}
//判断日期,时间大小
function compareTime(logintime, logouttime) {
if (logintime.length > 0 && logouttime.length > 0) {
var logintimeTemp = logintime.split(" ");
var logouttimeTemp = logouttime.split(" ");
var arrloginDate = logintimeTemp[0].split("-");
var arrlogoutDate = logouttimeTemp[0].split("-");
var arrloginTime = logintimeTemp[1].split(":");
var arrlogoutTime = logouttimeTemp[1].split(":");
var allLoginDate = new Date(arrloginDate[0], arrloginDate[1], arrloginDate[2], arrloginTime[0], arrloginTime[1], arrloginTime[2]);
var allLogoutDate = new Date(arrlogoutDate[0], arrlogoutDate[1], arrlogoutDate[2], arrlogoutTime[0], arrlogoutTime[1], arrlogoutTime[2]);
if (allLoginDate.getTime() >= allLogoutDate.getTime()) {
return false;
} else {
return true;
}
} else {
return false;
}
}
//比较日期大小
function compareDate(startTime, endTime) {
var arys1 = new Array();
var arys2 = new Array();
if (startTime != null && endTime != null) {
arys1 = startTime.split('-');
var sDate = new Date(arys1[0], parseInt(arys1[1] - 1), arys1[2]);
arys2 = endTime.split('-');
var eDate = new Date(arys2[0], parseInt(arys2[1] - 1), arys2[2]);
if (sDate >= eDate) {
return false;
} else {
return true;
}
}
}
最后
以上就是纯真口红为你收集整理的JavaScript比较两个日期时间格式字符串的大小的全部内容,希望文章能够帮你解决JavaScript比较两个日期时间格式字符串的大小所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复