繁体   English   中英

Javascript DATE添加AM PM

[英]Javascript DATE add AM PM

我正在检查两个不同的日期时间,以查看一个是否大于另一个:

这是我(现在)的当前日期时间:2013年8月1日星期四GMT-0500(CDT)这是我正在查看的日期时间是否大于或小于:2013年8月1日星期四12:15 :00 GMT-0500(CDT)-(顺便说是12:15)

这是我的代码:

var current_date_time = new Date();
var date_time_checking_against = new Date(date_segment[0], date_segment[1]-1, date_segment[2], time_segment[0], time_segment[1]);

将于2013年8月1日星期四GMT-0500(CDT)出来。 然后我正在做一个简单的if检查:

if(current_date_time >= date_time_checking_against){ }

由于10:27:40不在12:15:00之后,因此无法正常工作。 但这应该是正确的,因为两个时间都是上午。 我需要知道这是正确的方法,还是有办法将其更改为24小时格式或以某种方式在其中添加am pm。 如有任何帮助,我们将不胜感激,如果需要进一步说明,请与我联系。

谢谢!

编辑:

这是日期时间数组:

var date_time_str = date+' '+time;
date_time_str = date_time_str.split(' ');
["2013-08-01", "12:15", "am"] // result from split above
var date_segment = date_time_str[0].split('-');
var time_segment = date_time_str[1].split(':');
var date_time_checking_against = new Date(date_segment[0], date_segment[1]-1, date_segment[2], time_segment[0], time_segment[1]);

给定以下数据源,这就是为它正确创建Date对象的方式。

date_time_str = ["2013-08-01", "12:15", "am"];
var date_segment = date_time_str[0].split('-');
var time_segment = date_time_str[1].split(':');
var date_time_checking_against = new Date(
    date_segment[0], // year
    date_segment[1]-1, // month of year
    date_segment[2], // day of month
    (time_segment[0]%12) + (date_time_str[2] == 'pm' ? 12 : 0), // hour of day
    time_segment[1]); // minute of hour
console.log(new Date() >= date_time_checking_against); // true, we've already passed this time

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM