Reputation: 137
Suppose I have 2 datetime variables:
var fromdt = "2013/05/29 12:30 PM";
var todt = "2013/05/29 01:30 AM";
I want to compare these 2 datetimes. How can I get Javascript to recognize whether the time is AM or PM?
I think Javascript will compare the time in 24 hours format. Do I need to convert the time to 24 hour format? Is that correct? Could someone please suggest the correct solution....
Upvotes: 7
Views: 11976
Reputation: 2931
Use this function
function get_time() {
var time_t = "";
var d = new Date();
var cur_hour = d.getHours();
cur_hour < 12 ? (time_t = "am") : (time_t = "pm");
cur_hour == 0 ? (cur_hour = 12) : (cur_hour = cur_hour);
cur_hour > 12 ? (cur_hour = cur_hour - 12) : (cur_hour = cur_hour);
var curr_min = d.getMinutes().toString();
var curr_sec = d.getSeconds().toString();
if (curr_min.length == 1) {
curr_min = "0" + curr_min;
}
if (curr_sec.length == 1) {
curr_sec = "0" + curr_sec;
}
$("#updatedTime").html(
cur_hour + ":" + curr_min + ":" + curr_sec + " " + time_t
);
alert(cur_hour + ":" + curr_min + ":" + curr_sec + " " + time_t);
}
Upvotes: 0
Reputation: 2896
Just use straight javascript functions
var fromdt = "2013/05/29 12:30 PM";
var todt = "2013/05/29 01:30 AM";
var from = new Date(Date.parse(fromdt));
var to = new Date(Date.parse(todt));
alert(from);
alert(to)
if (from > to) alert("From");
else alert("To");
Once the date is parsed into date form, you can do what you like with it. And you can compare dates using the standard operator signs ( >, < etc)
I'm not sure what you need to do with them, but http://www.w3schools.com/jsref/jsref_obj_date.asp is an okay reference.
And heres a crappy sandbox with the above code http://jsfiddle.net/QpFcW/
and a better one that XX deleted :( http://jsfiddle.net/QpFcW/1/
Upvotes: 8