js日期时间比较函数日期比较大小例子

发布时间:2020-06-03编辑:脚本学堂
有关js日期比较函数的用法,js 日期比较大小的一些例子,通过实例学习js date日期函数进行日期大小比较的方法,需要的朋友参考下。

例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')">