Javascript 检查时间是否介于2次之间
应用程序必须根据一天中的当前时间显示门是打开还是关闭的消息 闸门在上午8:00至上午9:30之前或下午5:50之后至晚上9:00之前开启,其余时间闸门保持关闭。我想根据时间输入显示消息。以下代码输出意外且不正确Javascript 检查时间是否介于2次之间,javascript,date,datetime,Javascript,Date,Datetime,应用程序必须根据一天中的当前时间显示门是打开还是关闭的消息 闸门在上午8:00至上午9:30之前或下午5:50之后至晚上9:00之前开启,其余时间闸门保持关闭。我想根据时间输入显示消息。以下代码输出意外且不正确 function isValid(date, h1, m1, h2, m2) { var h = date.getHours(); var m = date.getMinutes(); return (h1 < h || h1 ==
function isValid(date, h1, m1, h2, m2) {
var h = date.getHours();
var m = date.getMinutes();
return (h1 < h || h1 == h && m1 <= m) && (h < h2 || h == h2 && m <= m2);
}
function a() {
var current = new Date('2020-01-03 09:31:00');
if ((isValid(current, 8, 0, 9, 30)) || (isValid(current, 5, 50, 21, 0))) {
return 'Gate is open'
} else {
return 'Please come after 8:00am and before 9:30am OR after 5:50pm and before 9:00pm';
}
}a();
函数有效(日期,h1,m1,h2,m2){
var h=date.getHours();
var m=date.getMinutes();
return(h1
function isValid(date, h1, m1, h2, m2) {
var h = date.getHours();
var m = date.getMinutes();
var d1 = new Date(date);
d1.setHours(h1);
d1.setMinutes(m1);
var d2 = new Date(date);
d2.setHours(h2);
d2.setMinutes(m2);
return (date-d1)*(date-d2) < 0;
}
函数有效(日期,h1,m1,h2,m2){
var h=date.getHours();
var m=date.getMinutes();
var d1=新日期(日期);
d1.设定小时数(h1);
d1.设定分钟数(m1);
var d2=新日期(日期);
d2.设定小时数(h2);
d2.设定分钟数(m2);
申报表(日期-d1)*(日期-d2)<0;
}
您可以简单地将日期对象用作int:
function isValid(date, h1, m1, h2, m2) {
var h = date.getHours();
var m = date.getMinutes();
var d1 = new Date(date);
d1.setHours(h1);
d1.setMinutes(m1);
var d2 = new Date(date);
d2.setHours(h2);
d2.setMinutes(m2);
return (date-d1)*(date-d2) < 0;
}
函数有效(日期,h1,m1,h2,m2){
var h=date.getHours();
var m=date.getMinutes();
var d1=新日期(日期);
d1.设定小时数(h1);
d1.设定分钟数(m1);
var d2=新日期(日期);
d2.设定小时数(h2);
d2.设定分钟数(m2);
申报表(日期-d1)*(日期-d2)<0;
}
您必须在pm日期中使用17
而不是5
function isValid(date, h1, m1, h2, m2) {
var h = date.getHours();
var m = date.getMinutes();
return (h1 <= h && m1 <= m) && (h <= h2 && m <= m2);
}
function a() {
var current = new Date('2020-01-03 09:31:00');
if ((isValid(current, 8, 0, 9, 30)) || (isValid(current, 17, 50, 21, 0))){
return 'Gate is open'
} else {
return 'Please come after 8:00am and before 9:30am OR after 5:50pm and before 9:00pm';
}
}
函数有效(日期,h1,m1,h2,m2){
var h=date.getHours();
var m=date.getMinutes();
返回(h1您必须在pm日期中使用17
而不是5
function isValid(date, h1, m1, h2, m2) {
var h = date.getHours();
var m = date.getMinutes();
return (h1 <= h && m1 <= m) && (h <= h2 && m <= m2);
}
function a() {
var current = new Date('2020-01-03 09:31:00');
if ((isValid(current, 8, 0, 9, 30)) || (isValid(current, 17, 50, 21, 0))){
return 'Gate is open'
} else {
return 'Please come after 8:00am and before 9:30am OR after 5:50pm and before 9:00pm';
}
}
函数有效(日期,h1,m1,h2,m2){
var h=date.getHours();
var m=date.getMinutes();
return(h1)这是否回答了您的问题?否。我希望根据输入时间显示Gate is open或else消息。这里的输入时间是2020-01-03 09:31:00,必须显示“请在…之后光临…”该链接准确地显示了如何将当前时间与其他任意时间进行比较,这正是您所要求的。不支持的字符串格式的解析取决于实现。new Date('2020-01-03 09:31:00'))
在至少一个当前浏览器中返回一个无效日期,请参阅,这是否回答了您的问题?否。我希望根据输入时间显示Gate is open或else消息。此处的输入时间为2020-01-03 09:31:00,必须显示“请在…之后光临…”该链接准确地显示了如何将当前时间与其他任意时间进行比较,这正是您所要求的。不支持的字符串格式的解析取决于实现。new Date('2020-01-03 09:31:00'))
在至少一个当前浏览器中返回无效日期,请参见否。我希望根据输入时间显示Gate is open或else消息。这里的输入时间是2020-01-03 09:31:00,必须显示“请在…之后到达”。您可以一次性设置小时和分钟:d1.setHours(h1,m1)
;-)否。我希望根据输入时间显示Gate is open(闸门打开)或else(其他)消息。此处的输入时间为2020-01-03 09:31:00,必须显示“请到…”您可以一次性设置小时和分钟:d1。设置小时(h1,m1)
;-)如何进行时间比较?我希望根据输入时间显示闸门打开或else消息。此处的输入时间为2020-01-03 09:31:00,必须显示“请在…之后光临…”如何进行时间比较?我希望根据输入时间显示闸门打开或else消息。此处的输入时间为2020-01-03 09:31:00,必须显示“请在…之后光临…”