計算兩個時間的時間差(天、小時、分鍾、秒數)


例子:計算某個時間距離當前時間相差的天數

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');  //獲取兩個時間相差天數

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM