Comparing two times with Moment JS

javascript, momentjs

Solution

If you are always dealing with the time in `h:mma` format, you can specify it when parsing...

var beginningTime = moment('8:45am', 'h:mma');
var endTime = moment('9:00am', 'h:mma');
console.log(beginningTime.isBefore(endTime)); // true
console.log(beginningTime.toDate()); // Mon May 12 2014 08:45:00
console.log(endTime.toDate()); // Mon May 12 2014 09:00:00
<script src="https://cdn.jsdelivr.net/momentjs/2.13.0/moment.min.js"></script>

It will use today as the date, so it won't work if you are spanning different days.

JSFiddle

Problem

I have a problem that requires me to take two times in 12 hour format and compare them, we have moment.js included in our project and we initially thought it would be as trivial as this: ``` var beginningTime = moment('8:45am'); var endTime = moment('9:00am'); console.log(beginningTime.isBefore(endTime)); //false??? ``` Fiddle: http://jsfiddle.net/KyleMuir/M4R4z/ Is there something we are missing? It feels like this shouldn't be a hard problem to solve. When we perform any moment functions on our `beginningTime` or `endTime` it simply says `NAN`

Original source