js时间比较与差值


//计算天数差的函数,通用  
function  DateDiff(sDate1,  sDate2){    //sDate1和sDate2是2006-12-18格式  
  var  aDate,  oDate1,  oDate2,  iDays  
  aDate  =  sDate1.split("-")  
  oDate1  =  new  Date(aDate[1]  +  '-'  +  aDate[2]  +  '-'  +  aDate[0])    //转换为12-18-2006格式  
  aDate  =  sDate2.split("-")  
  oDate2  =  new  Date(aDate[1]  +  '-'  +  aDate[2]  +  '-'  +  aDate[0])  
  iDays  =  parseInt(Math.abs(oDate1  -  oDate2)  /  1000  /  60  /  60  /24)+1    //把相差的毫秒数转换为天数  
  return  iDays  
}    


/*
*开始时间与结束时间为空返回false
*开始时间大于结束时间返回 false
*开始与结束时间相差大于10天返回false
*/
function time_compare(starttime,endtime){//starttime endtime 格式为2017-12-11

var startdate = new Date(starttime.replace(/\-/g, "\/"));

var enddate = new Date(endtime.replace(/\-/g, "\/"));

var nowday = new Date();
var m = nowday.getMonth()+1; //从 Date 对象返回月份 (0 ~ 11)。
var y = nowday.getFullYear();
var d = nowday.getDate();
var dst = y+"-"+m+"-"+d;
var ddys = new Date(dst);

var year  = nowday.getFullYear();
var month = nowday.getMonth()+1;
var nowt = nowday.getDate();

var day = DateDiff(starttime,endtime);

if(starttime=="" || endtime==""){
alert("请选时间!");
return false;
}else if(startdate>enddate){
alert("开时间不能大于结束时间!");
return false;
}else if(day>10){
alert("开始时间与结束时间间隔为:"+day+"天"+",超过10天,请重新选择时间!");
return false;
}else if(startdate>=ddys){
alert("开始时间不能大于等于当天");
return false;
}else if(enddate>=ddys){
alert("结束时间不能大于等于当天");
return false;
}else{
return true;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值