Was ist der einfachste Weg, um eine Instanz von new Date () zu erhalten, aber die Uhrzeit auf Mitternacht einzustellen?
javascript
Sixty4Bit
quelle
quelle
new Date(new Date().setHours(0,0,0,0))
.Ich wollte nur klarstellen, dass der Ausschnitt aus der akzeptierten Antwort die nächste Mitternacht in der Vergangenheit angibt :
Wenn Sie in Zukunft die nächste Mitternacht erhalten möchten , verwenden Sie den folgenden Code:
quelle
Ein Einzeiler für Objektkonfigurationen:
Beim Erstellen eines Elements:
quelle
Ich werde dies hier nur hinzufügen, weil ich auf dieser Seite gelandet bin und nach Möglichkeiten gesucht habe, dies in moment.js zu tun und und anderen zu tun.
[Begründung: Das Wort "Moment" erscheint bereits an anderer Stelle auf dieser Seite, daher suchen Suchmaschinen direkt hier und moment.js ist weit genug verbreitet, um zu , dass es behandelt wird, wie oft es in anderen SO-Fragen erwähnt wird.]
Also, in Version 2.0.0 und höher:
Für frühere Versionen:
Docs:
http://momentjs.com/docs/#/manipulating/start-of/
quelle
moment(DATE_OBJECT).startOf('day').toDate();
Sie können wahrscheinlich verwenden
wenn Sie den Wert nur einmal benötigen.
quelle
Um das Beispiel von @ Dan noch nützlicher zu machen, musste ich den nächsten Mittag oder Mitternacht finden.
Auf diese Weise konnte ich eine Frequenzobergrenze für ein Ereignis festlegen, die für jeden Besucher meiner Website nur einmal am Morgen und einmal am Nachmittag erfolgen konnte. Das erfasste Datum wurde verwendet, um den Ablauf des Cookies festzulegen.
quelle
Wenn Sie mit Daten rechnen, verursacht die Sommerzeit häufig 1 Stunde mehr oder eine Stunde weniger als Mitternacht (MESZ). Dies führt zu einer Differenz von 1 Tag, wenn die Daten zurückkehren. Die Daten müssen also auf Mitternacht gerundet werden. Der Code lautet also (ths to jamisOn):
quelle
Ich habe ein paar Prototypen gemacht, um das für mich zu erledigen.
Wenn Sie den Sicherheitscheck nicht möchten, können Sie ihn einfach verwenden
Anwendungsbeispiel:
quelle
Falls Sie d3.js bereits als Abhängigkeit in Ihrem Projekt haben oder es Ihnen nichts ausmacht, es einzubringen , hat d3-time ( die Bibliothek von d3.js ist ab Version 4.0.0 modular aufgebaut ) Intervalle .
Sie können sich als nützlich erweisen, wenn Datumsangaben auf "Standard" -Werte gesetzt werden, z. B. Mitternacht, 0,00 Sekunden, der erste des Monats usw.
quelle