首页 >web前端 >js教程 >javascript 判断两个日期之差的示例代码_时间日期

javascript 判断两个日期之差的示例代码_时间日期

WBOY
WBOY原创
2016-05-16 15:40:551239浏览

日期差我们需要像php中一样把如2015-08-30这种转换成秒之后再利用两个日期的秒数进行相减之后再加起判断就可以了,如果判断日期相等就简单多了在文章最后有例子说明。

例子1,日期之差函数

function better_time(strDateStart,strDateEnd){
  var strSeparator = "-"; //日期分隔符
  var strDateArrayStart;
  var strDateArrayEnd;
  var intDay;
  strDateArrayStart = strDateStart.split(strSeparator);
  strDateArrayEnd = strDateEnd.split(strSeparator);
  var strDateS = new Date(strDateArrayStart[0] + "/" + strDateArrayStart[1] + "/" + strDateArrayStart[2]);
  var strDateE = new Date(strDateArrayEnd[0] + "/" + strDateArrayEnd[1] + "/" + strDateArrayEnd[2]);
  intDay = (strDateE-strDateS)/(1000*3600*24);
  return intDay;
 }

例子2

function checkTime(){
   var dateInp=$("#dateInp").val();
   var day1=Date.parse(dateInp.replace(/-/g, "/"));
   var nowDate = new Date();
   var dateStr = nowDate.getFullYear()+"/"+(nowDate.getMonth() + 1)+"/"+nowDate.getDate();        
   var day2=Date.parse(dateStr);
   var apartTime=day1-day2;
   var apartDay=parseInt(apartTime / (1000 * 60 * 60 * 24));
   if(apartDay ==0){
     alert("不能预约当天");
     return false;
   }else if (apartDay < 1 || apartDay > 3){
     alert("预约日期超出范围");
     return false;
   } 
 }

判断日期相等

var date1 = new Date("2013-11-29");
 var date2 = new Date("2013-(www.jb51.net)11-29");
 console.log(date1.getTime() == date2.getTime()); //true

注意哦,大家不要这样写

var date1 = new Date("2013-11-29");
 var date2 = new Da(www.jb51.net)te("2013-11-29");
 console.log(date1 == date2); //false

这样是错误的哦,因为使用new date之后日期就是对象了,那么对象就不能像字符那样对比了。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn