Наповнення JS розділу

Добридень, Пані та Панове, завдяки вам вдалося зібрати більше 19тис грн з необхідних 15тис на впровадження JS розділу.

JS розділ вже впроваджено - переходимо до його наповнення і почнемо бігти довгий марафон, адже JS має більше 1100 різноманітних методів, властивостей, подій і т.д., які необхідно описати.

Будемо працювати, і вдень, і вночі, щоб орієнтовно взимку закінчити наповнювати JS розділ!

Ви також можете допомогти нам в цьому. Долучайтеся до нашої спільноти в дискорді - ставайте її частиною і допомагайте нашому розвитку.

Також, підтримуйте нас матеріально.

JS метод Date.setHours()

Загальний опис

Date.prototype.setHours() є вбудованим методом в JavaScript, який призначений для встановлення годин для конкретного об'єкта дати. Цей метод надає гнучкість у керуванні датами та часом, дозволяючи динамічно модифікувати або коригувати години в існуючому об'єкті дати.

Розглянемо практичний приклад. Припустимо, у вас є веб-сайт, на якому відображається час заходу сонця для різних міст. Однак, час заходу сонця може змінюватися в залежності від певних умов. Щоб динамічно коригувати цей час, можна використовувати Date.prototype.setHours().

let sunset = new Date();
sunset.setHours(19); // Встановлюємо час заходу сонця на 19:00
console.log(sunset);

Тепер, якщо у вас є інформація, що час заходу сонця змінився на 15 хвилин пізніше, ви можете легко скоригувати це:

let minutes = sunset.getMinutes();
sunset.setHours(19, minutes + 15); // Коригуємо час на 15 хвилин пізніше
console.log(sunset);

Крім основної функції встановлення годин, метод також дозволяє встановлювати хвилини, секунди та мілісекунди. Це може бути корисним, наприклад, коли потрібно врахувати часовий пояс користувача та відобразити точний локальний час події:

let userEvent = new Date();
userEvent.setHours(14, 30, 0, 0); // Встановлюємо час події на 14:30:00.000
console.log(userEvent);
Нотатка:

Хоча JavaScript автоматично коригує значення поза допустимим діапазоном (наприклад, 25 годин стануть 1 годиною наступного дня), такі ситуації можуть призвести до неочікуваних результатів. Завжди переконуйтеся, що передаєте коректні значення в setHours().

Нотатка:

Метод Date.prototype.setHours() приймає не лише години, але й хвилини, секунди та мілісекунди. Це може бути корисно, коли потрібно встановити конкретний момент часу, не користуючись послідовно іншими методами.

Приклад:

let exactTime = new Date();
exactTime.setHours(12, 34, 56, 789);
console.log(exactTime); // 12:34:56.789
Нотатка:

Методи, такі як setHours(), часто використовуються в комбінації з іншими методами дати для досягнення конкретних результатів. Наприклад, якщо потрібно збільшити дату на певну кількість годин, комбінуйте setHours() з getHours().

Приклад:

let futureTime = new Date();
futureTime.setHours(futureTime.getHours() + 6);
console.log(futureTime); // Текущая дата и время + 6 часов
Порада:

При роботі з методом Date.prototype.setHours() завжди звертайте увагу на поточну часову зону вашої дати. Для уникнення непорозумінь і неточностей, особливо при роботі з глобальними проектами, використовуйте додаткові бібліотеки, такі як Moment.js, які допоможуть вам керувати часовими зонами.

Приклад:

let eventTime = new Date();
eventTime.setHours(15); 
console.log(eventTime); // Ваш локальний час

Синтаксис

setHours(hoursValue)
setHours(hoursValue, minutesValue)
setHours(hoursValue, minutesValue, secondsValue)
setHours(hoursValue, minutesValue, secondsValue, msValue)

Параметри

*hoursValue

Ціле число від 0 до 23, яке представляє години.

minutesValue

Ціле число від 0 до 59, що представляє хвилини.

secondsValue

Ціле число від 0 до 59, що представляє секунди. Якщо ви вказуєте secondsValue, ви також повинні вказати minutesValue.

msValue

Ціле число від 0 до 999, що представляє мілісекунди. Якщо ви вказуєте msValue, ви також повинні вказати і minutesValue, і secondsValue.

Return

timestamp

Метод модифікує об'єкт Date, і повертає його новий часовий штамп (timestamp). Якщо параметр є NaN (або інші значення, які конвертуються в NaN, такі як undefined), дата встановлюється як "Invalid Date" і повертається NaN.

Переглядачі

Переглядач

1

1

1

3

12

Переглядач

4.4

18

4

1

Переглядач

0.10.0

1.0

Приклади


Цей приклад демонструє використання методу Date.prototype.setHours() для встановлення конкретної години для поточної дати. Користувач може вибрати годину через вхідне поле, натиснути кнопку, і внизу відображатиметься оновлений час.

У цьому прикладі ми спочатку отримуємо поточну дату та час за допомогою об'єкта Date. Потім, використовуючи метод setHours(), ми змінюємо годину на 15, тобто на 3 година дня.

// Створюємо новий об'єкт дати для поточного часу
let currentDate = new Date();
console.log("Поточний час:", currentDate);

// Використовуючи метод setHours(), змінюємо годину на 15 (3 година дня)
currentDate.setHours(15);
console.log("Змінений час:", currentDate);

У цьому прикладі ми також починаємо із створення об'єкта Date для поточного часу. Потім, використовуючи метод getHours(), отримуємо поточну годину і додаємо до неї 5 годин. Результат записуємо назад у об'єкт now за допомогою методу setHours().

// Створюємо новий об'єкт дати для поточного часу
let now = new Date();
console.log("Поточний час:", now);

// Додаємо 5 годин до поточного часу
let newHour = now.getHours() + 5;
now.setHours(newHour);
console.log("Час після додавання 5 годин:", now);