Ermitteln Sie den Zeitunterschied zwischen Datum und Uhrzeit
Bei der Arbeit mit zeitbasierten Daten ist es entscheidend, den Zeitunterschied zwischen zwei angegebenen Daten oder Zeiten zu verstehen . Dieser Unterschied kann mithilfe der Moment.js-Bibliothek berechnet werden.
Moment.js-Lösung
Moment.js bietet eine robuste Methode zur Berechnung des Zeitunterschieds. Betrachten Sie das folgende Beispiel:
var now = "04/09/2013 15:00:00"; var then = "04/09/2013 14:20:30"; console.log(moment(moment.duration(now.diff(then))).format("hh:mm:ss"));
Dieser Code sollte „00:39:30“ ausgeben, was den Zeitunterschied zwischen „jetzt“ und „dann“ darstellt.
Dauer bis Zeitintervallumrechnung
Wenn der Zeitunterschied mehr als 24 Stunden beträgt, kann der obige Ansatz falsche Werte zurückgeben. Um dieses Problem zu beheben, verwenden Sie eine robustere Lösung:
var now = "04/09/2013 15:00:00"; var then = "02/09/2013 14:20:30"; var ms = moment(now,"DD/MM/YYYY HH:mm:ss").diff(moment(then,"DD/MM/YYYY HH:mm:ss")); var d = moment.duration(ms); var s = Math.floor(d.asHours()) + moment.utc(ms).format(":mm:ss");
In diesem überarbeiteten Code konvertieren wir die Zeitdifferenz in Millisekunden (ms) und verwenden dann die Funktion moment.duration(), um ein Dauerobjekt zu erstellen ( D). Schließlich extrahieren wir die Stunden, Minuten und Sekunden aus dem Dauerobjekt und formatieren sie in ein oder mehrere Zeitintervalle. Dieser Ansatz gewährleistet genaue Ergebnisse auch bei Zeitunterschieden von mehr als 24 Stunden.
Moment-Duration-Format-Plugin
Alternativ können Sie das Moment-Duration-Format-Plugin verwenden. Dies bietet eine spezielle Methode zum Formatieren von Dauerobjekten:
var now = "04/09/2013 15:00:00"; var then = "02/09/2013 14:20:30"; var ms = moment(now,"DD/MM/YYYY HH:mm:ss").diff(moment(then,"DD/MM/YYYY HH:mm:ss")); var d = moment.duration(ms); var s = d.format("hh:mm:ss");
Mit diesem Plugin wird der Zeitunterschied direkt in ein Zeitintervall formatiert, ohne dass dies erforderlich ist für manuelle Berechnungen.
Das obige ist der detaillierte Inhalt vonWie kann Moment.js verwendet werden, um den Zeitunterschied zwischen zwei DateTimes genau zu berechnen und zu formatieren und dabei Unterschiede von mehr als 24 Stunden zu verarbeiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!