JavaScript AM / PM时间比较

时间:2013-06-02 07:20:25

标签: javascript jquery datetime date-parsing

假设我有2个日期时间变量:

var fromdt = "2013/05/29 12:30 PM";
var todt = "2013/05/29 01:30 AM";

我想比较这两个日期时间。如何让Javascript识别时间是上午还是上午?

我认为Javascript将比较24小时格式的时间。我需要将时间转换为24小时格式吗?那是对的吗?有人可以建议正确的解决方案......

2 个答案:

答案 0 :(得分:6)

只需使用直接的javascript函数

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");       
}

将日期解析为日期表格后,您可以随意使用它。您可以使用标准操作员标志(>,< etc)

来比较日期

我不确定你需要做些什么,但是http://www.w3schools.com/jsref/jsref_obj_date.asp是一个好的参考。

这是一个糟糕的沙箱,上面的代码为http://jsfiddle.net/QpFcW/

和XX删除的更好的一个:( http://jsfiddle.net/QpFcW/1/

答案 1 :(得分:0)

使用此功能

            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);
        }