例子:計算某個時間距離當前時間相差的天數
1、獲取當前時間
Date.prototype.Format = function (fmt) { var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "H+": this.getHours(), //小時 "m+": this.getMinutes(), //分 "s+": this.getSeconds(), //秒 "q+": Math.floor((this.getMonth() + 3) / 3), //季度 "S": this.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); for (var k in o) if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); return fmt; } var time2 = new Date().Format("yyyy-MM-dd HH:mm:ss"); //獲取當前時間
2、計算兩個時間相差(天、小時、分鍾、秒數)的函數
function GetDateDiff(startTime,endTime,diffType){ startTime=startTime.replace(/\-/g,"/"); endTime=endTime.replace(/\-/g,"/"); diffType=diffType.toLowerCase(); var sTime = new Date(startTime); //開始時間 var eTime = new Date(endTime); //結束時間</font> //作為除數的數字 var divNum = 1; switch (diffType){ case "second": divNum=1000; break; case "minute": divNum=1000*60; break; case "hour": divNum=1000*3600; break; case "day": divNum=1000*3600*24; break; default: break; } return parseInt((eTime.getTime()-sTime.getTime())/parseInt(divNum)); }
3、調用函數 計算相差天數
var ti = GetDateDiff('2019-10-09 19:00:00','2019-12-12 14:33:30','day'); //獲取兩個時間相差天數