JS计算两个日期之间的天数
如下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>JS计算两个日期之间的天数</title> </head> <body> <script type="text/javascript"> function btnCount_Click(){ s1 = "2006-12-18" s2 = "2007-1-5" alert("第一个日期;"+s1+"/n第二个日期:"+s2+"/n相差"+getDays(s1,s2)+"天") } //计算天数差的函数,通用 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) //把相差的毫秒数转换为天数 return iDays } function getDays(date1 , date2){ var date1Str = date1.split("-");//将日期字符串分隔为数组,数组元素分别为年.月.日 //根据年 . 月 . 日的值创建Date对象 var date1Obj = new Date(date1Str[0],(date1Str[1]-1),date1Str[2]); var date2Str = date2.split("-"); var date2Obj = new Date(date2Str[0],(date2Str[1]-1),date2Str[2]); var t1 = date1Obj.getTime(); var t2 = date2Obj.getTime(); var dateTime = 1000*60*60*24; //每一天的毫秒数 var minusDays = Math.floor(((t2-t1)/dateTime));//计算出两个日期的天数差 var days = Math.abs(minusDays);//取绝对值 return days; } </script> <input name="" type="button" onclick="btnCount_Click()" value="计算天数" /> </body> </html>
end