Однією з найцікавіших речей в JavaScript є отримання доступу до дати і часу, та подальша робота з ними. Насправді це дуже легко, і в сьогоднішній статті ми розглянемо цей процес дуже детально. В JavaScript вже є вбудований об’єкт, який отримує дату і час – все, що вам потрібно зробити, це просто використовувати його!
Щоб використовувати цей об’єкт дати, ви повинні спочатку створити його екземпляр. Для цього виконайте наступне:
<script type="text/javascript"> var currentDate = new Date(); console.log(currentDate); </script>
Всякий раз, коли вам потрібно створити екземпляр об’єкта Date()
, використовуйте схожу конструкцію (з використанням ключового слова new
, за яким слідує ім’я об’єкта). Після доступу до об’єкту дати, ви можете звертатися до потрібних методів цього об’єкту.
Деякі методи об’єкта дати:
Метод об’єкта | Значення, що повертається |
---|---|
getDate() | повертає день місяця |
getDay() | повертає день тижня |
getHours() | повертає годину (починається з 0-23) |
getMinutes() | повертає хвилини |
getSeconds() | повертає секунди |
getMonth() | повертає місяць (починається з 0-11) |
getFullYear() | повертає поточний рік |
getTime() | повертає повний час (в трохи дивному форматі) |
Тепер перейдемо до практики.
Припустимо, вам потрібно отримати сьогоднішню дату. Тоді використовуйте наступну конструкцію:
<script type="text/javascript"> var todayDate = new Date(); var currYear = todayDate.getFullYear(); var currMonth = todayDate.getMonth()+1; var currDay = todayDate.getDate(); document.write("Сьогоднішня дата: "); document.write(currDay + "-" + currMonth + "-" + currYear); </script>
Результат буде наступного формату:
Сьогоднішня дата: 7-4-2019 // завтра результат буде інший, оскільки дата зміниться
Давайте трохи розшифруємо наведений вище код:
todayDate
– це змінна, в яку записується екземпляр об’єкта Date()
. Ви можете назвати цю змінну як завгодно. Після створення екземпляра, ця змінна буде мати доступ до всіх методів даного об’єкта. Наприклад, вираз:var currYear = todayDate.getFullYear();
означає «Отримати поточний рік і привласнити його змінній currYear
».
+1
до змінної місяця (currMonth
), оскільки в JavaScript місяці відраховуються, починаючи з «0», а не з «1».Date()
в JavaScript завжди використовує значення дати і часу, які встановлені на комп’ютері поточного користувача. Таким чином, для різних користувачів будуть показуватися різні дата/час, в залежності від того, в якому місці світу він або вона знаходиться.
1) Показ різних картинок на сайті в залежності від часу доби
Володіючи вищевказаними знаннями, ви можете відображати різні картинки на своєму сайті в залежності від поточної дати/часу. Наприклад, вам потрібно змінювати фонову картинку (бекграунд) сайту в залежності від того, що зараз за вікном – день чи ніч.
Підготуйте дві різні картинки (одну для дня, іншу для ночі).
Тепер додайте простий скрипт:
<script type="text/javascript"> var currDay = new Date(); var dayTime = currDay.getHours(); if (dayTime <= 21) { document.write("<img src='day.jpg'>"); } else { document.write("<img src='night.jpg'>"); } </script>
Тут ми перевіряємо поточний час, якщо зараз більше 21:00, тоді буде показуватися фонова картинка для ночі, в іншому випадку буде показана фонова картинка для світлого часу доби.
2) Додавання на сайт онлайн годинника з допомогою форми
Додати онлайн годинник на сайт за допомогою JavaScript та форми досить просто. Основна концепція полягає в тому, щоб безперервно записувати дані часу в поле форми кожну 1 секунду, використовуючи оновлений час з комп’ютера користувача.
Ви можете скопіювати і вставити наведений нижче код на свій сайт і, при бажанні, трохи погратися з ним:
<form name="Clock"> <input type="text" size="10" name="timer"> </form> <script type="text/javascript"> function showCurrentTime(){ var currDate = new Date(); var hours = currDate.getHours(); var minutes = currDate.getMinutes(); var seconds = currDate.getSeconds(); if (minutes <= 9) { minutes = "0" + minutes; } if (seconds <= 9) { seconds = "0" + seconds; } document.Clock.timer.value = hours + ":" + minutes + ":" + seconds; setTimeout("showCurrentTime()", 1000); } showCurrentTime(); </script>
Деякі пояснення коду:
setTimeout
, який запускає функцію showCurrentTime()
кожну секунду. Даний метод оновлює функцію кожну секунду, що створює ілюзію, що годинник дійсно цокає.
Коли ви встановлюєте WordPress, він люб'язно надає вам стандартну сторінку реєстрації за адресою wp-login.php?action=register. Вона…
Це може звучати як заголовок якоїсь книжки з психології, або саморозвитку, однак це дійсно важлива…
Чи замислювалися ви коли-небудь, як ваш фізичний сервер, один шматок "заліза", перетворюється на десяток незалежних…
Хостинг - це не просто оренда серверів, а ціла модель використання інфраструктури мережі. Вона виникла…
Акцентна стіна стане ідеальним рішенням для швидкої трансформації будь-якого приміщення. Цей інноваційний дизайнерський метод здатен…
Ви знайомі з ситуацією, коли в одній кімнаті треба вмістити все? І спальню, і вітальню,…