我必須計算javascript中持續時間的時間間隔。即如果100:56:56至101:00:00,則持續時間爲0小時3分鐘4秒。使用javascript計算磁帶的間隔持續時間?
如何在javasript中做到這一點?
我必須計算javascript中持續時間的時間間隔。即如果100:56:56至101:00:00,則持續時間爲0小時3分鐘4秒。使用javascript計算磁帶的間隔持續時間?
如何在javasript中做到這一點?
在Javascript中,你可以做一個日期對象的數學。
var
date1 = new Date(2010, 07, 07, 05, 00, 00),
date2 = new Date(2010, 07, 21, 15, 30, 00);
return (date2 - date1);
這將返回兩個日期之間的毫秒數。
然後,您可以將其轉換成小時,分鐘和秒,如果你通過86400000除以天想要的東西,然後通過對3600000個小時的60000分鐘分割的是剩餘,那麼其餘的衝突,等等。
function Time (hour, min, sec) {
this.hour = hour;
this.min = min;
this.sec = sec;
}
Time.parse = function (str) {
var arr = str.split (":");
return new Time (arr [0], arr [1], arr [2]);
};
Time.prototype = {
constructor: Time
, toString: function() {
return [this.hour, this.min, this.sec].join (":");
}
, toSec: function() {
return this.hour * 3600 + this.min * 60 + this.sec;
}
, toMillSec: function() {
return this.toSec() * 1000;
}
, subtract: function (time) {
diff = new Time (
this.hour - time.hour
, this.min - time.min
, this.sec - time.sec
);
if (diff.sec < 0) {
diff.sec += 60;
--diff.min;
}
if (diff.min < 0) {
diff.min += 60;
--diff.hour;
}
return diff;
}
};
var t1 = Time.parse ("101:00:00");
var t2 = Time.parse ("100:56:56");
var t3 = t1.subtract (t2);
t3.toString(); // "0:3:4"
t3.toMillSec(); // 184000
你好托馬斯 在這裏我沒有處理日期....在這裏處理磁帶時間位置。如此大的人力資源職位可以來100小時到112小時可以來 – 2010-07-23 05:57:04
嗯,它是否工作,如果你把,例如,新日期(0,0,0,100,56,56)?雖然我明白你的意思,但這仍然是一種解決方法。 – thomasrutter 2010-07-23 05:59:04
不......它不工作! – 2010-07-23 06:13:36