JS метод Date.getUTCDay()
Загальний опис
Date.prototype.getUTCDay()
є однією із властивостей об'єкта Date
у JavaScript, яка дозволяє отримати день тижня у форматі від 0 (неділя) до 6 (субота) за координованим універсальним часом (UTC). Завдяки цьому методу можна визначити день тижня будь-якої дати без врахування змінного часового поясу користувача.
Наприклад, уявімо, що ви створюєте сервіс для бронювання столиків у ресторані, який працює лише у будні дні. Щоб переконатися, що клієнт обирає правильний день, можна використовувати Date.prototype.getUTCDay()
для визначення дня тижня та відкидання неділь та субот:
let chosenDate = new Date('2023-09-14');
let dayOfWeek = chosenDate.getUTCDay();
if (dayOfWeek === 0 || dayOfWeek === 6) {
console.log('Вибачте, ресторан закритий. Оберіть інший день.');
} else {
console.log('Ресторан відкритий! Продовжуйте бронювання.');
}
У контексті додатків, які працюють з глобальними користувачами з різних часових поясів, Date.prototype.getUTCDay()
стає незамінним. Це тому, що цей метод виводить день тижня за універсальним координованим часом (UTC), а не за локальним часом користувача.
Особливо це стає важливим при роботі з серверами. Коли дата та час обробляються на сервері, це часто робиться в UTC, щоб уникнути плутанини з часовими поясами. Використовуючи Date.prototype.getUTCDay()
, розробники можуть впевнитися, що вони отримують правильний день тижня незалежно від локального часу сервера чи користувача.
Порада: | Основна відмінність між
|
Порада: | Щоб зробити ваш код читабельнішим та зручнішим для користувача, можна створити масив із назвами днів тижня та використовувати значення, отримані від
|
Порада: | Для досвідчених розробників важливо розуміти, що сервери часто обробляють дату та час у форматі UTC. Отже, коли ви спілкуєтеся із серверами або взаємодієте із базами даних, завжди враховуйте, який формат часу ви використовуєте, щоб уникнути можливих непорозумінь або помилок. |
Порада: | Професіонали розуміють важливість читабельності коду. Замість безпосереднього порівняння значень від |
Синтаксис
getUTCDay()
Параметри
Return
integer
Повертає номер дня тижня у форматі UTC, де 0 відповідає неділі, а 6 - суботі.
Переглядачі
Переглядач | |||||
---|---|---|---|---|---|
1 |
1 |
1 |
4 |
12 |
Переглядач | ||||
---|---|---|---|---|
4.4 |
18 |
4 |
1 |
Переглядач | ||
---|---|---|
0.10.0 |
1.0 |
Приклади
Цей приклад демонструє використання методу Date.prototype.getUTCDay()
. Коли користувач вибирає дату з календаря, відображається день тижня для вибраної дати у форматі UTC.
У цьому прикладі ми використовуємо метод getUTCDay()
для визначення поточного дня тижня. Потім розраховуємо, скільки днів залишилося до наступної суботи, та повідомляємо користувачеві про це.
// Створюємо масив із назвами днів тижня
const daysOfWeek = ['Неділя', 'Понеділок', 'Вівторок', 'Середа', 'Четвер', 'П\'ятниця', 'Субота'];
// Отримуємо поточний день тижня у форматі UTC
const currentDay = new Date().$getUTCDay$();
// Знаходимо кількість днів до наступної суботи
const daysToSaturday = (6 - currentDay + 1) % 7;
// Повідомляємо користувачеві, коли буде наступний вихідний
console.log(`До наступної суботи залишилося ${daysToSaturday} днів.`);
У другому прикладі ми маємо словник завдань для кожного дня тижня. Використовуючи метод getUTCDay()
, ми можемо дізнатися поточний день тижня та отримати список завдань, які необхідно виконати сьогодні.
// Список завдань для кожного дня тижня
const tasksOfWeek = {
'0': ['Відпочинок'],
'1': ['Зустріч з клієнтом', 'Розробка додатку'],
'2': ['Тестування програми', 'Обговорення проекту'],
'3': ['Відпрацювання помилок', 'Документація'],
'4': ['Маркетингова кампанія', 'Відпрацювання зворотнього зв\'язку'],
'5': ['Зустріч з командою'],
'6': ['Відпочинок']
};
// Отримуємо поточний день тижня у форматі UTC
const currentDay = new Date().$getUTCDay$();
// Виводимо завдання на сьогоднішній день
console.log(`Завдання на сьогодні: ${tasksOfWeek[currentDay].join(', ')}`);