Bestimmen der Sommerzeit (DST) in JavaScript
Bei der Berechnung von Zeitunterschieden ist es wichtig, die Sommerzeit (DST) zu berücksichtigen. Dies kann zu Unstimmigkeiten führen, wenn es nicht richtig berücksichtigt wird. In diesem Codeausschnitt:
var secDiff = Math.abs(Math.round((utc_date-this.premiere_date)/1000)); this.years = this.calculateUnit(secDiff,(86400*365)); this.days = this.calculateUnit(secDiff-(this.years*(86400*365)),86400); this.hours = this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)),3600); this.minutes = this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)-(this.hours*3600)),60); this.seconds = this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)-(this.hours*3600)-(this.minutes*60)),1);
Die Sommerzeit kann zu Fehlberechnungen bei Zeitunterschieden führen. Um dieses Problem zu beheben, sollten Sie die folgenden Schritte in Betracht ziehen:
Überprüfen Sie, ob die Sommerzeit in Kraft ist:
Implementieren Sie die Funktion isDstObserved():
Date.prototype.isDstObserved = function () { return this.getTimezoneOffset() < this.stdTimezoneOffset(); }
Diese Funktion prüft, ob der Zeitzonenoffset für a Das angegebene Datum liegt unter seinem standardmäßigen Zeitzonenversatz, was darauf hinweist, dass die Sommerzeit in Kraft ist.
DST-Status überprüfen:
Das obige ist der detaillierte Inhalt vonWie kann ich die Sommerzeit in JavaScript-Zeitberechnungen berücksichtigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!