Ich habe eine var example="05-10-1983"
Wie kann ich den "nächsten Tag" der Zeichenfolge Beispiel erhalten?
Ich habe versucht, Date-Objekt zu verwenden ... aber nichts ...
Dies würde für einfache Szenarien wie die, die Sie haben, tun:
%Vor% Im Wesentlichen erstellen wir ein leeres Datumsobjekt und legen das Jahr, den Monat und das Datum mit setFullYear()
Funktion. Wir greifen dann den Zeitstempel von diesem Datum mit getTime()
und fügen 1 Tag (86400000 Millisekunden) hinzu und setzen ihn Zurück zum Datum mit der Funktion setTime()
.
Wenn Sie etwas Komplizierteres brauchen, wie Unterstützung für verschiedene Formate und ähnliches, sollten Sie sich die datejs-Bibliothek
Sie können Folgendes tun:
%Vor% #getDate
/ #setDate
erhält / setzt den aktuellen Tag des Monats (1-31).
Nachdem das oben genannte ausgeführt wurde, wird nextDay
auf das Datum von morgen gesetzt. Dies wird auch auf den nächsten Monat / Jahr übertragen, wenn es das Ende des Monats ist, und sogar Schaltjahre behandeln. :)
Das Problem mit dem +86400000-Ansatz ist das Fehlerpotenzial beim Überschreiten einer Sommerzeitbarriere. Zum Beispiel bin ich auf EST. Wenn ich das tue:
%Vor%e wird 11/4/2012 23:00:00 sein Wenn Sie dann nur den Datumsteil extrahieren, erhalten Sie den falschen Wert. Ich bin kürzlich auf dieses Problem gestoßen, als ich ein Kalender-Steuerelement geschrieben habe.
Dies wird es besser machen (und mit einem flexiblen Offset, der Sie mehr als 1 Tag in der Zukunft machen wird):
%Vor%Sie können das Framework php.js verwenden. Google dafür. Dies beinhaltet die erweiterten Datumsfunktionen und mehr
Es gibt Schaltsekunden, Schalttage, Sommerzeit usw., daher kann es in allen Fällen schwierig sein, ein Problem zu lösen.
Meiner Meinung nach ist der beste Weg, dies zu beheben (ohne eine Datumsbibliothek), die Überfüllungsfunktion des Datumskonstruktors [1] zu nutzen:
%Vor%[1] Ссылка
[2] Ссылка
[3] Ссылка
Sie können den Tagesindex nach getDay()
function ermitteln und ein Array von Tagen-Strings auf folgende Weise erstellen:
Tags und Links javascript date