js前臺計算兩個日期的間隔時間(時間差)
阿新 • • 發佈:2019-02-05
在後臺傳來兩個時間欄位,從中解析出兩個字串型別的日期格式 需要在前臺解析出兩個時間的間隔
這裡採用獲取兩個日期的時間戳進行計算
時間戳是指格林威治時間1970年01月01日00時00分00秒(北京時間1970年01月01日08時00分00秒)起至現在的總秒數。
所以要求兩個時間的間隔只需要將兩個時間戳相減 就能得到兩個時間相差的毫秒數 通過除以3600*1000得到小時數 以此類推
faultDate,completeTime為字串格式 需要new Date()函式進行轉化
function(faultDate,completeTime){ var stime = Date.parse(new Date(faultDat)); var etime = Date.parse(new Date(completeTime)); var usedTime = etime - stime; //兩個時間戳相差的毫秒數 var days=Math.floor(usedTime/(24*3600*1000)); //計算出小時數 var leave1=usedTime%(24*3600*1000); //計算天數後剩餘的毫秒數 var hours=Math.floor(leave1/(3600*1000)); //計算相差分鐘數 var leave2=leave1%(3600*1000); //計算小時數後剩餘的毫秒數 var minutes=Math.floor(leave2/(60*1000)); var time = days + "天"+hours+"時"+minutes+"分"; return time; }
JavaScript 獲取當前時間戳:
第一種方法:
var timestamp = Date.parse(new Date());
結果:1280977330000
第二種方法:
var timestamp = (new Date()).valueOf();
結果:1280977330748
第三種方法:
var timestamp=new Date().getTime();
結果:1280977330748
第一種:獲取的時間戳是把毫秒改成000顯示,
第二種和第三種是獲取了當前毫秒的時間戳。