例1,js日期比较大小(yyyy-mm-dd),仅对年月日比较。
代码:
复制代码 代码示例:
function duibi(a, b) {
var arr = a.split("-");
var starttime = new Date(arr[0], arr[1], arr[2]);
var starttimes = starttime.getTime();
var arrs = b.split("-");
var lktime = new Date(arrs[0], arrs[1], arrs[2]);
var lktimes = lktime.getTime();
if (starttimes >= lktimes) {
alert('开始时间大于离开时间,请检查');
return false;
}
else
return true;
}
例2,js时间比较(yyyy-mm-dd hh:mi:ss),可精确比较年月日与时分秒。
代码:
复制代码 代码示例:
function comptime() {
var beginTime = "2009-09-21 00:00:00";
var endTime = "2009-09-21 00:00:01";
var beginTimes = beginTime.substring(0, 10).split('-');
var endTimes = endTime.substring(0, 10).split('-');
beginTime = beginTimes[1] + '-' + beginTimes[2] + '-' + beginTimes[0] + ' ' + beginTime.substring(10, 19);
endTime = endTimes[1] + '-' + endTimes[2] + '-' + endTimes[0] + ' ' + endTime.substring(10, 19);
alert(beginTime + "aaa" + endTime);
alert(Date.parse(endTime));
alert(Date.parse(beginTime));
var a = (Date.parse(endTime) - Date.parse(beginTime)) / 3600 / 1000;
if (a < 0) {
alert("endTime小!");
} else if (a > 0) {
alert("endTime大!");
} else if (a == 0) {
alert("时间相等!");
} else {
return 'exception'
}
}
看了以上二个js 日期比较大小的例子,相信大家对js date日期函数的用法,已经有了一定了解。
假若你对javascript日期函数的用法不甚了解,可以参考如下文章:
例3,js日期比较大小,两个自定义函数,对页面输入框中的两个日期比较大小。
复制代码 代码示例:
<html>
<head>
<script language="javascript" type="text/javascript">
/** 日期比较 **/
function compareDate(strDate1,strDate2)
{
var date1 = new Date(strDate1.replace(/-/g, "/"));
var date2 = new Date(strDate2.replace(/-/g, "/"));
return date1-date2;
}
/** 比较 **/
function doCompare(){
var strDate1 = document.getElementById("strDate1").value;
var strDate2 = document.getElementById("strDate2").value;
var result = compareDate(strDate1,strDate2);
if ( result>0 ) {
alert("strDate1晚于strDate2");
}else if( result<0 ){
alert("strDate1早于strDate2");
}else if ( result==0 ){
alert("strDate1等于strDate2");
}
}
</script>
</head>
<body>
<input type="text" id="strDate1" name="strDate1" value="2012-07-01"/>
<input type="text" id="strDate2" name="strDate2" value="2012-08-01"/>
<input type="button" id="compareBtn" name="compareBtn" value="比较" onClick="doCompare();"/>
</body>
</html>
例4,这里再提供几个js 比较日期大小的实例代码。
js如何比较两个日期的大小,来看代码:
复制代码 代码示例:
function dateCompare(startdate,enddate)
{
var arr=startdate.split("-");
var starttime=new Date(arr[0],arr[1],arr[2]);
var starttimes=starttime.getTime();
var arrs=enddate.split("-");
var lktime=new Date(arrs[0],arrs[1],arrs[2]);
var lktimes=lktime.getTime();
if(starttimes>=lktimes)
{
return false;
}
else
return true;
}
2)、第二种js 日期比较大小的方法。
复制代码 代码示例:
//验证是否合法日期
function CheckDate(strDate){
if(strDate.length>0){
var reg= /^(/d )-(/d{1,2})-(/d{1,2}) (/d{1,2}):(/d{1,2}):(/d{1,2})$/;
if(!reg.test(strDate)){
return false;
}
}
return true;
}
function isStartEndDate(startDate,endDate){
//alert(startDate "===" endDate);
if(startDate.length>0&&endDate.length>0){
var startDateTemp = startDate.split(" ");
var endDateTemp = endDate.split(" ");
var arrStartDate = startDateTemp[0].split("-");
var arrEndDate = endDateTemp[0].split("-");
var arrStartTime = startDateTemp[1].split(":");
var arrEndTime = endDateTemp[1].split(":");
var allStartDate = new Date(arrStartDate[0],arrStartDate[1],arrStartDate[2],arrStartTime[0],arrStartTime[1],arrStartTime[2]);
var allEndDate = new Date(arrEndDate[0],arrEndDate[1],arrEndDate[2],arrEndTime[0],arrEndTime[1],arrEndTime[2]);
if(allStartDate.getTime()>allEndDate.getTime()){
return false;
}
}
return true;
}
function checkAskDate(StartDate,EndDate){
if(!CheckDate(StartDate.value)){
alert("开始日期格式不正确!/n正确格式为:2004-01-01 00:00");
StartDate.focus();
return false;
}
if(!CheckDate(EndDate.value)){
alert("结束日期格式不正确!/n正确格式为:2004-01-01 00:00");
EndDate.focus();
return false;
}
if(!isStartEndDate(StartDate.value,EndDate.value)){
alert("开始日期不能大于结束日期");
return false;
}
return true;
}
3)、当日期格式为XXXX年-XX月-XX日时的日期大小比较。
代码:
复制代码 代码示例:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<title>js 日期比较大小 - www.jb200.com</title>
<script language="javascript">
function judgeDate()
{
var date1 = document.getElementById("dt1").value.replace(/-/g, "/");
var date2 = document.getElementById("dt2").value.replace(/-/g, "/");
var d1 = new Date(date1);
var d2 = new Date(date2);
if(Date.parse(d1) - Date.parse(d2)==0)
{
alert(date1 "等于" date2)
}
if(Date.parse(d1) - Date.parse(d2)<0)
{
alert(date1 "晚于" date2)
}
if(Date.parse(d1) - Date.parse(d2)>0)
{
alert(date1 "早于" date2)
}
}
</script>
</head>
<body>
<input id="dt1" value="2007-09-09" />
<input id="dt2" value="2007-10-10"/>
<input type="button" value="提交" onclick="judgedate()"/>
</body>
</html>
<script language="javascript">
function test(str1,str2)
{
var d1 = new Date(str1);
var d2 = new Date(str2);
if(Date.parse(d1) - Date.parse(d2)==0)
{
alert(str1 "等于" str2)
}
if(Date.parse(d1) - Date.parse(d2)<0)
{
alert(str1 "早于" str2)
}
if(Date.parse(d1) - Date.parse(d2)>0)
{
alert(str1 "晚于" str2)
}
}
</script>
<input type="button" value="确定" onclick="test('2005/4/12','2006/4/12')">