网络编程 
首页 > 网络编程 > 浏览文章

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

(编辑:jimmy 日期: 2025/7/1 浏览:3 次 )

日期差我们需要像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之后日期就是对象了,那么对象就不能像字符那样对比了。

上一篇:js 判断所选时间(或者当前时间)是否在某一时间段的实现代码
下一篇:js实现图片放大和拖拽特效代码分享
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?