Как улучшить свой код? Позвольте мне сосчитать пути ...
Назовите переменную как-нибудь подходящую. Он хранит текущий час, а не дату, поэтому называть его myDate
неуместно.
Час не изменится во время выполнения кода. По крайней мере, для времени жизни кода это const
муравей. Обозначьте его так:
const currentHour = (new Date()).getHours();
Когда время между 7:00 и 8:00, время будет равно 7. Если оно равно 8, то вы прошли время 8:00 , Таким образом, для этого часового блока вам важно только, чтобы время было ровно 7.
Числа являются числами. Ведущие нули не имеют значения, и в более старых двигателях произойдет полный сбой для 08
и 09
, поскольку ведущий ноль делает его восьмеричным числом, которое не допускает 8 или 9.
Если у вас есть одна вещь для сравнения с несколькими значениями, это именно то, для чего switch
.
switch( currentHour) {
case 7:
// do something when it is between 07:00:00 and 07:59:59
break;
case 8:
// do something else when it is between 08:00:00 and 08:59:59
break;
}
Дополнительные примечания, если вы хотите сделать то же самое для большего количества чем час, вы можете сделать это.
case 9:
case 10:
// do the same thing from 09:00:00 to 10:59:59
break;