Hallo Martin,
Indem du wirklich einen Tag addierst, und nicht die Anzahl Sekunden, die zwar "meistens", aber eben nicht immer, einer Tageslaenge entsprechen.
Das sollte in diesem Fall keine Rolle spielen, da das interne Datum in GMT behandelt wird.
Nein! Natürlich ist kennt GMT / UTC keine Zeitumstellung, aber wenn Du z.B. das Datum "30. März 2008, 00:59:59 UTC" betrachtest, dann ist das "30. März 2008, 01:59:59 CET" in Lokalzeit (Deutschland), eine Sekunde später, "30. März 2008, 01:00:00 UTC" ist dagegen in Lokalzeit "30. März 2008, 02:00:00 CEST".
Wenn Du also auf den 29. März 2008 23:59:59 Lokalzeit genau 86400 Sekunden addierst, dann wirst Du den 31. März 2008 00:59:59 Lokalzeit erhalten - und nicht den 30. März 2008 23:59:59 Lokalzeit!
Mmh, ja.
Ich habe - glaub ich - nicht bedacht, dass der Constructor vom Date die Parameter als Lokalzeit interpretiert, was man an dem Beispiel recht gut sehen kann.
new Date(2002,1,2).toGMTString()
ergibt: Fri, 01 Feb 2002 23:00:00 GMT
Danke
- Martin