JS时间差计算(毫秒/天数/月份)
Posted Judicious
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS时间差计算(毫秒/天数/月份)相关的知识,希望对你有一定的参考价值。
1.时间差计算
var startDate = "2016-06-06"; var endDate = "2016-08-08"; var start=new Date(startDate.replace("-", "/").replace("-", "/")); var end=new Date(endDate.replace("-", "/").replace("-", "/")); if (startDate != "" || endDate != "") { if (startDate != "" && endDate != "" && endDate.length > 0 && start <= end) { var sjc=end.getTime()-start.getTime(); //时间差的毫秒数 var days=Math.floor(sjc/(24*3600*1000)); //计算出相差天数 var leave1=sjc%(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+" 秒"); var year1 = startDate.substr(0,4); var year2 = endDate.substr(0,4); var month1 = startDate.substr(5,2); var month2 = endDate.substr(5,2); var len=(year2-year1)*12+(month2-month1); //计算出相差月份 }else { alert("请输入正确的时间范围"); return false; } }
2.时间格式化
/** * 日期格式化 * date:日期对象 * format:时间格式 * 引用 : deteFormat(new Date("2016-05-05 12:23:26"),"yyyy-MM-dd HH:mm:ss") */ dateFormat:function (date,format) { //author: meizz var o = { "M+": date.getMonth() + 1, //月份 "d+": date.getDate(), //日 "h+": date.getHours(), //小时 "m+": date.getMinutes(), //分 "s+": date.getSeconds(), //秒 "q+": Math.floor((date.getMonth() + 3) / 3), //季度 "S": date.getMilliseconds() //毫秒 }; if (/(y+)/.test(format)) { format = format.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length)); } for (var k in o) if (new RegExp("(" + k + ")").test(format)) format = format.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); return format; }
以上是关于JS时间差计算(毫秒/天数/月份)的主要内容,如果未能解决你的问题,请参考以下文章