Ich verwende moment.js, um mein Datum und Uhrzeit zu formatieren. Hier habe ich zwei Datumsangaben, und ich möchte eine bestimmte Funktion erreichen, wenn ein Datum größer ist als das andere. Ich habe die meisten ihrer Dokumente gelesen, aber die Funktion zum Erreichen dieses Ziels nicht gefunden. Ich weiß, sie wird da sein.
Dies ist mein Code:
var date_time = 2013-03-24 + 'T' + 10:15:20:12 + 'Z'
var d = moment(date_time).tz('UTC'); // erstes Datum
var now = new Date(),
dnow = moment(now).tz('UTC'),
snow = dnow.minute() % 15,
diffnow = 15 - snow,
tonow = moment(dnow).add('minute', diffnow),
ahead30now = moment(tonow).add('minute', 30);
if (d > ahead30now) {
// Eingabezeit erlauben
console.log('UTC-Zeit DB', d.format());
} else {
}
Bearbeiten
var date_time = req.body.date + 'T' + req.body.time + req.body.timezone; // 2014-03-24T01:15:000
var utc_input_time = moment(date_time).utc(); // 2014-03-24T01:15:000
console.log('UTC konvertiertes date_time', moment(date_time).utc().format("YYYY-MM-DDTHH:mm:SSS"));
var isafter = moment(utc_input_time).isAfter(moment('2014-03-24T01:14:000')); // true
if(isafter === true){
console.log('ist nach true');
} else {
console.log('ist nach ist falsch');
}
Hier vergleiche ich zwei Daten, d.h. 2014-03-24T01:15:000 > 2014-03-24T01:14:000
, in der Erwartung, dass das erste größer ist als das zweite, aber es geht immer zur else-Bedingung. Ich weiß nicht warum?