假设我有 2 个日期时间变量:
var fromdt = "2013/05/29 12:30 PM";
var todt = "2013/05/29 01:30 AM";
我想比较这两个日期时间。如何让 Javascript 识别时间是上午还是下午?
我认为 Javascript 会以 24 小时格式比较时间。我需要将时间转换为 24 小时格式吗?那是对的吗?有人可以建议正确的解决方案....
假设我有 2 个日期时间变量:
var fromdt = "2013/05/29 12:30 PM";
var todt = "2013/05/29 01:30 AM";
我想比较这两个日期时间。如何让 Javascript 识别时间是上午还是下午?
我认为 Javascript 会以 24 小时格式比较时间。我需要将时间转换为 24 小时格式吗?那是对的吗?有人可以建议正确的解决方案....
只需使用直接的 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");
一旦日期被解析成日期形式,你就可以用它做你喜欢的事情。您可以使用标准运算符符号(>、< 等)比较日期
我不确定您需要对它们做什么,但http://www.w3schools.com/jsref/jsref_obj_date.asp是一个不错的参考。
这是一个带有上述代码的蹩脚沙箱http://jsfiddle.net/QpFcW/
还有一个被 XX 删除的更好的 :( http://jsfiddle.net/QpFcW/1/
使用此功能
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);
}