如何使用javascript将时间(上午12:30)转换为时间戳?

谁能告诉我怎么做? 我想比较2次,找出哪一个更大? 喜欢下午12:30和下午5:30

使用Date()。parse()

Date.parse('24/09/2011 15:21:41') 

如果输入始终与问题中提到的相似:

 var time1 = "12:30 pm"; var time2 = "5:30pm"; var time1_higher_than_time2 = compareTime(time1, time2); if(time1_higher_than_time2) alert("Time1 is higher than time 2"); else alert("Time1 is not higher than time 2. "); /* Time1 <= time2*/ /*Illustrative code. Returns true if time1 is greater than time2*/ function compareTime(time1, time2){ var re = /^([012]?\d):([0-6]?\d)\s*(a|p)m$/i; time1 = time1.match(re); time2 = time2.match(re); if(time1 && time2){ var is_pm1 = /p/i.test(time1[3]) ? 12 : 0; var hour1 = (time1[1]*1 + is_pm1) % 12; var is_pm2 = /p/i.test(time2[3]) ? 12 : 0; var hour2 = (time2[1]*1 + is_pm2) % 12; if(hour1 != hour2) return hour1 > hour2; var minute1 = time1[2]*1; var minute2 = time2[2]*1; return minute1 > minute2; } } 

只需在12H时间解析它并进行比较。
在这里运行示例

 var date1 = Date.parse('01/01/2001 12:30 PM'); var date2 = Date.parse('01/01/2001 5:30 PM'); console.log(date1 > date2); 

将时间转换为javascript dates ,在日期上调用getTime()以返回自1970年1月1日午夜以来的毫秒数。

比较每个日期的getTime()返回值以确定哪个更大。

对于12小时格式,以下代码将起作用。

 var date1 = new Date('Sat Sep 24 2011 12:30:00 PM').getTime(); //12:30 pm var date2 = new Date('Sat Sep 24 2011 5:30:00 PM').getTime(); //5:30 pm if(date1 > date2) { alert('date1 is greater'); } else if(date2 > date1) { alert('date2 is greater'); } else { alert('dates are equal'); } 

查看以下链接 –
http://www.dotnetspider.com/forum/162449-Time-Comparison-Javascript.aspx

你可以在这里测试你的javascript –
http://www.w3schools.com/js/tryit.asp?filename=tryjs_events