我有以下代码:
var timeCutoff = moment('05:00PM', 'h:mmA').format("MM/DD/YYYY hh:mmA")
var testTime = moment('11:00AM', 'h:mmA').format("MM/DD/YYYY hh:mmA");
if(testTime < timeCutoff){
console.log(testTime + " before " + timeCutoff);
}
else{
console.log(testTime + " after " + timeCutoff);
}
这里的想法是,现在的时间是之前下午5点,做点什么。如果时间是 5PM后,请执行其他操作。
以下是我遇到的问题:
testTime设置为('11:00AM','h:mmA')并记录意外的“after”条件。
testTime设置为('12:00PM','h:mmA')并记录意外的“after”条件。
testTime设置为('01:00PM','h:mmA')并记录预期的“之前”状态。
testTime设置为('09:00PM','h:mmA')并记录预期的“after”条件。
我目前正在使用moment.js 2.17.1
非常感谢任何建议。谢谢!
答案 0 :(得分:2)
您应该使用isBefore()
方法。
https://momentjs.com/docs/#/query/is-before/
var timeCutoff = moment('05:00PM', 'h:mmA');
var testTime = moment('11:00AM', 'h:mmA');
if(testTime.isBefore(timeCutoff)) {
console.log(testTime.format("MM/DD/YYYY hh:mmA") + " before " + timeCutoff.format("MM/DD/YYYY hh:mmA"));
}
else
{
console.log(testTime.format("MM/DD/YYYY hh:mmA") + " after " + timeCutoff.format("MM/DD/YYYY hh:mmA"));
}