阅读量:2
介绍
使用js比较两个日期的时间大小,一般在前台选择时间时常常使用。比如:结束时间不能小于开始时间,开始时间不能小于当前时间等。
代码示例
示例一:开始时间不能小于当前时间
//开始时间 var startTime = '2024-04-22' //当前时间 var currentDate = new Date(); var currentDateStr = currentDate.getFullYear() + '-' + (currentDate.getMonth() + 1) + '-' + currentDate.getDate(); if (new Date(currentDateStr).getTime() > new Date(startTime).getTime()) { alert('开始时间不能小于当前时间') }
示例二:结束时间不能小于开始时间
var startTime = '2024-04-22' var endTime = '2024-04-21' if (new Date(startTime).getTime() > new Date(endTime).getTime()) { alert('结束时间不能小于开始时间') }
正式环境中时间的判断流程
首先判断开始、结束时间是否为空,不为空再判断结束时间是否小于开始时间
var startTime = $("#startTime").val() var endTime = $("#endTime").val() if(isEmpty(startTime)){ initError('生效时间不能为空',$('#startTime').next()); flag = false; } if(isEmpty(endTime)){ initError('失效时间不能为空',$('#endTime').next()); flag = false; } if(!isEmpty(startTime)&&!isEmpty(endTime)) { var currentDate = new Date(); var currentDateStr = currentDate.getFullYear() + '-' + (currentDate.getMonth() + 1) + '-' + currentDate.getDate(); if (new Date(currentDateStr).getTime() > new Date(startTime).getTime()) { initError('生效时间不能小于当前时间', $('#startTime').next()); flag = false; }else{ if (new Date(startTime).getTime() > new Date(endTime).getTime()) { initError('生效时间不能大于失效时间', $('#startTime').next()); flag = false; } } }