Convert 12 hour (AM/PM) string to 24 Date object using moment js

I have a output resulting from a timepicker giving 12 hour format of time.

Eg : "1:45 AM (or) "12:15 PM" as **string**

Is there a way to parse this string format to 24 hour using moment js back to date object?


Solution 1:

See documentation of moment js parse function

JSFiddle

var dt = moment("12:15 AM", ["h:mm A"]).format("HH:mm");

Solution 2:

I know that this answer is not for the question (actually it is for the opposite case), but I will put it for completeness and if someone (like me) was looking for it.
In case you want to convert from the 24 Hour system to 12 Hour system then you could use the following

return moment("13", ["HH"]).format("hh A");

the previous code will produce the result 1 PM

Solution 3:

Just a little conversation "2 PM" to "14.00"

const number = moment("02:00 PM", ["h:mm A"]).format("HH:mm");
cosole.log(number); // "14.00"

"14.00" to "2 PM"

const number = moment("14.00", ["HH.mm"]).format("hh:mm a");
cosole.log(number); // "02:00 pm"