1.计算时间差,天数,小时数,余数
var begintime_ms = Date.parse(new Date(begintime.replace(/-/g, "/"))); //begintime 为开始时间
var endtime_ms = Date.parse(new Date(endtime.replace(/-/g, "/"))); // endtime 为结束时间
//parse() 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。
得到的结果为 毫秒数,可根据 毫秒数的大小,来判断时间。
当然根据毫秒数 可以根据他们的差值 来求相差的天数或是小时等。
var date1=new Date(); //开始时间 var date2=new Date(); //结束时间 var date3=date2.getTime()-date1.getTime() //时间差的毫秒数
//计算出相差天数 var days=Math.floor(date3/(24*3600*1000)) //计算出小时数 var leave1=date3%(24*3600*1000) //计算天数后剩余的毫秒数 var hours=Math.floor(leave1/(3600*1000))
//计算相差分钟数 var leave2=leave1%(3600*1000) //计算小时数后剩余的毫秒数 var minutes=Math.floor(leave2/(60*1000))
//计算相差秒数 var leave3=leave2%(60*1000) //计算分钟数后剩余的毫秒数 var seconds=Math.round(leave3/1000)
alert(" 相差 "+days+"天 "+hours+"小时 "+minutes+" 分钟"+seconds+" 秒")
2.获取两个日期之间的所有日期的代码
var start = "2012-3-25"; var end = "2012-4-3"; var startTime = getDate(start); var endTime = getDate(end); //获取日期中的年月日 function getDate(datestr){ var temp = datestr.split("-"); var date = new Date(temp[0],temp[1],temp[2]); return date; } while((endTime.getTime()-startTime.getTime())>=0){ var year = startTime.getFullYear(); var month = startTime.getMonth().toString().length==1?"0"+startTime.getMonth().toString():startTime.getMonth(); var day = startTime.getDate().toString().length==1?"0"+startTime.getDate():startTime.getDate(); alert(year+"-"+month+"-"+day); startTime.setDate(startTime.getDate()+1); //getDate() 方法可返回月份的某一天。 //setDate() 设置 Date 对象中月的某一天 (1 ~ 31)。 }
两个时间选择插件:
1.bootstrap-datetimepicker http://www.bootcss.com/p/bootstrap-datetimepicker/
2.daterangepicker http://www.daterangepicker.com/
摘自:Js计算时间差,天数,小时数,余数 http://qiaolevip.iteye.com/blog/1329292
js获取两个日期之间的所有日期的代码 http://www.jbxue.com/article/11064.html