446 Stimmen

Wie erhalte ich den Beginn und das Ende des Tages in Javascript?

Wie erhält man den Beginn ( 00:00:00 ) und das Ende ( 23:59:59 ) des heutigen Tages als Zeitstempel ( GMT )? Der Computer verwendet eine lokale Zeit.

11voto

Ashutosh Jha Punkte 13643

Unter MomentJs Wir können es wie folgt deklarieren:

   const start = moment().format('YYYY-MM-DD 00:00:01');
   const end = moment().format('YYYY-MM-DD 23:59:59');

9voto

romor Punkte 992

Da Sie am UTC-Tagesbeginn/-ende interessiert sind, können Sie auch den Modulo-Operator verwenden:

const now = new Date().getTime();
let startOfDay = now - (now % 86400000);
let endDate = startOfDay + 86400000;

wobei 86400 die Anzahl der Sekunden eines Tages ist und die resultierenden Variablen die Epoche in Millisekunden sind.

Wenn Sie es vorziehen Date Objekte:

const now = new Date().getTime();
let startOfDay = new Date(now - (now % 86400000));
let endDate = new Date(now - (now % 86400000) + 86400000);

8voto

afinemonkey Punkte 171

Wenn Sie nur an den Zeitstempeln interessiert sind in GMT können Sie dies auch tun, was sich bequem für verschiedene Intervalle (Stunde: 1000 * 60 * 60 , 12 Stunden: 1000 * 60 * 60 * 12 , usw.)

const interval = 1000 * 60 * 60 * 24; // 24 hours in milliseconds

let startOfDay = Math.floor(Date.now() / interval) * interval;
let endOfDay = startOfDay + interval - 1; // 23:59:59:9999

6voto

Mikhail Shabrikov Punkte 8188

Ich bevorzuge die Verwendung von 日付変更線 Bibliothek für Datumsmanipulation. Es ist wirklich ein großartiges modulares und konsistentes Werkzeug. Sie können Start und Ende des Tages auf diese Weise erhalten:

var startOfDay = dateFns.startOfDay;
var endOfDay = dateFns.endOfDay;

console.log('start of day ==> ', startOfDay(new Date('2015-11-11')));
console.log('end of day ==> ', endOfDay(new Date('2015-11-11')));

<script src="https://cdnjs.cloudflare.com/ajax/libs/date-fns/1.29.0/date_fns.min.js"></script>

5voto

Sagar Davara Punkte 379

Wir können verwenden moment für diese.

// for day start time
moment(moment().startOf('day')).format('HH:mm')

// for day end time
moment(moment().endOf('day')).format('HH:mm')

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X