ฉันใช้ moment.js เพื่อจัดรูปแบบเวลาวันที่ของฉันที่นี่ฉันมีสองค่าวันที่และฉันต้องการบรรลุฟังก์ชั่นเฉพาะเมื่อวันหนึ่งมากกว่าวันอื่น ฉันอ่านเอกสารส่วนใหญ่ของพวกเขาแล้ว แต่ไม่พบฟังก์ชันที่จะทำให้บรรลุผล ฉันรู้ว่ามันจะมี
นี่คือรหัสของฉัน:
var date_time = 2013-03-24 + 'T' + 10:15:20:12 + 'Z'
var d = moment(date_time).tz('UTC'); // first date
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) {
// allow input time
console.log('UTC TIME DB', d.format());
} else {
}
แก้ไข
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 converted 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('is after true');
} else {
console.log('is after is false');
}
ที่นี่ฉันกำลังเปรียบเทียบสองวันคือ2014-03-24T01:15:000 > 2014-03-24T01:14:000
คาดว่าวันแรกจะดีกว่าวันที่สอง แต่มันจะไปที่เงื่อนไขอื่นเสมอ ฉันไม่รู้ว่าทำไม