12

我和我的朋友正在做一个学校项目;任务是制作一个房间预订网站。这是我们尝试 JavaScript 的第一年,我们希望将字符串格式化为时间 (h:m)。我们房间预订网站的用户可以选择他/她想要房间的时间,输出是:H:m(24hour-clock:minutes)。例如 12:15。

因此我的问题是:是否可以将此字符串 (h:m) 转换为时间,并轻松检查用户输入的预订时间是否超过 30 分钟?所以我们可以例如说:

 if(start_of_reservation < start_of_reservation(+30minutes)){ 
   alert("You need to book a room atleast 30minutes"); }

 else if(start_of_reservation > start_of_reservation(+6hours)){ 
   alert("You can't book a room longer than 6 hours"); }

 else {
 // moving on..
 }
4

2 回答 2

16
var year = '2013';
var month = '04';
var day = '18';

var hour = '12';
var min = '35';

var reserv = new Date(year,month,day,hour,min)

console.log(reserv);

您可能希望通过检查当前日期自行获取那些年、月和日值。这纯粹是为了展示如何将字符串转换为日期。

用于reserv.getTime()转换为毫秒时间,从而可以比较两次;

reserv.getTime() - reserv2.getTime()

有关更多信息,请查看MDN

于 2013-04-17T23:43:41.663 回答
0

是的。使用正则表达式Date 对象

RegExps 将用于从日期字符串中提取小时和分钟,

Date 对象将用于比较。

于 2013-04-17T23:45:00.230 回答