如果出现以下情况的当前时间,我需要运行一个特定的逻辑
我发现很难看出当前时间是否介于一个间隔之间:
if(currentHour < 7){
console.log("Time is before than 7 am :" + 0 );
}
else if (currentHour > 19){
console.log("Time is after than 7 pm :" + 12148 );
}
else if(//Compare between the hours)
请提供适当的代码帮助。
答案 0 :(得分:1)
if (currentHour >= 7 && currentHour <=19) {
}
答案 1 :(得分:1)
如果您正在处理单个时间间隔,则可以使用logical AND(&&
),如下所示:
if(currentHour >= 7 && currentHour <= 9) {...}
由于您正在处理多个连续的时间间隔,因此可以使用else
语句简化逻辑,因为如果前一个if
条件为真,它们将无法运行:
if(currentHour < 7) { //less than 7am
}
else if(currentHour <= 9) { //between 7am and 9am
}
else if(currentHour <= 19) { //between 9am and 7pm
}
else { //greater than 7pm
}
(根据您是否需要包含或独占,您可能需要更改<
或<=
。)
答案 2 :(得分:0)
尝试下一个代码。 getHours()
类的Date
方法以24小时格式返回当前小时。 (4 PM
为16
,7 PM
为19
,等等......)
var currentHour = new Date().getHours();
if (currentHour < 7) {
console.log("less than 7 am");
}
if (currentHour >= 7 && currentHour <=9) {
console.log("between 7am and 9 am");
}
if (currentHour >= 9 && currentHour <= 19) {
console.log("between 9am and 7pm");
}
if (currentHour > 19) {
console.log("greater than 7pm");
}