您的位置:首页 > Web前端 > JavaScript

js 比较日期大小

2011-01-12 11:29 471 查看
核心提示: js如何比较两个日期的大小,总结出比较简单的一种方法,供大家共同讨论。

JavaScript代码

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;

}

第二种:

JavaScript代码

//验证是否合法日期

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;

}

============================================================================

日期格式:XXXX年-XX月-XX日

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<TITLE> New document.</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')">
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: