Как проверить текущую дату и время на javascript

Для сайтов, как правило, очень редко требуется проверка текущей даты и времени, но давайте рассмотрим ситуацию, когда нам необходимо выводить пользователю текст, в зависимости от того сколько сейчас времени и какой день недели.

Javascript – как проверить текущую дату

Представим себе следующую ситуацию – на сайте есть форма “перезвоните мне”, где пользователю предлагают оставить свой телефон (простая форма из input type=”text” и input type=”submit”). Но на выходных наши операторы отдыхают, также, их рабочий день заканчивается в 18-00.

Создадим для начала объект Date:

var D = new Date();

После того как мы создали объект Date, который содержит информацию о текущей дате, нам необходимо получить текущий день недели и время.

var D = new Date(),
    hour = D.getHours(),
    day = D.getUTCDay();

Осталось рассказать про одну небольшую особенность, которая может быть не так очевидна. Во-первых, не забывайте, в языках программирования, как правило, всё начинается с 0 – наш 1ый день недели это ноль. Во-вторых, воскресенье это первый день недели, то есть ноль (привет Америка).

Вот как выглядит наш скрипт, для оповещения будем вызывать всех бесящие алерты 🙂

<script>
var D = new Date(),
    hour = D.getHours(),
    day = D.getUTCDay();
if (day == 0 || day == 6) {
    alert("Оператор перезвонит Вам в рабочий день с 10:00 до 18:00. Если не хотите ждать, то позвоните по номеру +1 (234) 555 67 89");
} else {
    if (hour >= 10 && hour < 18 ) {
        alert("Спасибо! Ваш номер телефона отправлен. Ждите звонка оператора в ближайшее время.");
    } else {
        alert("Спасибо! Ваш номер телефона отправлен. Ваше заявка будет прочитана завтра в 10 утра и Вам сразу перезвонит наш оператор.");
    }
}
</script>

Как видно из кода выше, мы проверяем, сегодня суббота или воскресенье – если нет, проверяем сейчас рабочее время или нет. Таким образом, у нас есть 3 разные ситуации, и наши посетители будут нам чуть более благодарны 🙂

Еще пару слов про объект Date() – вся информация в нем хранится в миллисекундах, а точкой отсчета выбрана дата 1-Янв-1970 00:00.

 

автор: Dmitriy

З 2011 року займаюся веб-розробкою. Зараз я – PHP Full Stack Developer.
Обговорити ваш проект, а також дізнатися більше про мене ви можете на цьому сайті:
dev.forwww.com

Email: dmitriyribka@gmail.com

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *