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

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

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

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

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

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

JS метод Date.getUTCMinutes()

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

Date.prototype.getUTCMinutes() - це метод об'єкта дати в JavaScript, що повертає хвилини від 0 до 59 конкретної дати відповідно до координованого всесвітнього часу (UTC).

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

Ось приклад, де можна було б скористатися цим методом:

let meetingTime = new Date();
let utcMinutes = meetingTime.getUTCMinutes();
console.log(`Зустріч запланована на ${utcMinutes} хвилину за UTC часом`);

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

Ще одним поширеним випадком використання getUTCMinutes() є порівняння двох моментів часу:

let startTime = new Date("2023-09-15T12:00:00Z");
let endTime = new Date("2023-09-15T12:45:00Z");

if (endTime.getUTCMinutes() - startTime.getUTCMinutes() >= 30) {
    console.log("Зустріч тривала більше 30 хвилин");
} else {
    console.log("Зустріч тривала менше 30 хвилин");
}

В цьому коді ми перевіряємо, чи тривала зустріч більше 30 хвилин, порівнюючи хвилини початку і кінця зустрічі.

Крім того, результат getUTCMinutes() може бути використаний для визначення інтервалів часу або використання в кастомних функціях форматування дати:

function formatUTCTime(date) {
    let hours = date.getUTCHours();
    let minutes = date.getUTCMinutes();
    return `${hours}:${minutes < 10 ? '0' : ''}${minutes} UTC`;
}

let now = new Date();
console.log(formatUTCTime(now));

Тут ми створюємо функцію, яка форматує час в UTC.

Загалом, getUTCMinutes() - це інструмент, який може бути вкрай корисним для програмістів на всіх етапах розробки, від базового форматування часу до складних логічних операцій і порівнянь.

Порада:

При отриманні даних про час з різних джерел, завжди перевіряйте, чи повертає джерело час в UTC форматі. Якщо ви використовуєте метод .getUTCMinutes(), але дата надана не в UTC, результат може бути неточним.

let date = new Date("2023-09-15 12:45:00"); // Неправильний формат для UTC!
console.log(date.getUTCMinutes()); // Може повернути несподіваний результат.
Порада:

При роботі з великими інтервалами часу, як-от різниця в кілька годин, не забудьте враховувати і хвилини. Використовуючи тільки .getUTCHours() без .getUTCMinutes(), можна отримати неточний результат.

let startTime = new Date("2023-09-15T12:00:00Z");
let endTime = new Date("2023-09-15T14:45:00Z");
let duration = (endTime.getUTCHours() - startTime.getUTCHours()) * 60 + (endTime.getUTCMinutes() - startTime.getUTCMinutes());
console.log(`Зустріч тривала ${duration} хвилин`);
Порада:

Досвідчені розробники можуть комбінувати методи об'єкту .Date для отримання більш детальної інформації про дату та час. Наприклад, якщо потрібно відобразити час в форматі "гг:хв", ви можете створити функцію, яка буде об'єднувати результати .getUTCHours() та .getUTCMinutes().

function formatUTCTime(date) {
    let hours = date.getUTCHours();
    let minutes = date.getUTCMinutes();

    // Забезпечення відображення у двох цифрах
    if(hours < 10) {
        hours = '0' + hours;
    }

    if(minutes < 10) {
        minutes = '0' + minutes;
    }

    return `${hours}:${minutes}`;
}

let currentDate = new Date("2023-09-15T12:05:00Z");
console.log(formatUTCTime(currentDate)); // Виведе "12:05"

У цьому коді функція formatUTCTime приймає дату як аргумент і повертає час у форматі "гг:хв" для UTC. Завдяки умовам перевірки, навіть якщо години або хвилини будуть меншими за 10, вони все одно будуть відображатися у двох цифрах.

Порада:

Хоча вбудований об'єкт .Date надає базові методи для роботи з датою та часом, іноді може бути корисно використовувати зовнішні бібліотеки, як-от Moment.js, для розширеного функціоналу та більшої зручності.

Синтаксис

getUTCMinutes()

Параметри

Return

integer

Повертає ціле число від 0 до 59, що відображає хвилини в UTC часі поточної дати та часу, які зберігаються в об'єкті Date. Це значення не враховує зону часу або літній час об'єкта Date.

Переглядачі

Переглядач

1

1

1

4

12

Переглядач

4.4

18

4

1

Переглядач

0.10.0

1.0

Приклади


У цьому демонстраційному прикладі користувач може побачити, скільки хвилин залишилося до наступної години в UTC часі. Після завантаження сторінки або натискання кнопки "Оновити", JavaScript-функція calculateMinutesLeft() визначає поточні хвилини в UTC за допомогою методу getUTCMinutes(), а потім обчислює та відображає на веб-сторінці, скільки хвилин залишилося до наступної години.

Цей приклад демонструє, як можна використовувати getUTCHours() для перевірки, чи планова подія відбувається протягом робочого часу в UTC. Функція isDuringUTCWorkingHours приймає дату як аргумент та використовує getUTCHours() для отримання поточної години. Потім вона порівнює цю годину з початком та кінцем робочого часу. Функція повертає true, якщо подія відбувається протягом робочого часу, і false у протилежному випадку.

function isDuringUTCWorkingHours(date) {
    const workingStartHour = 9;  // Початок робочого дня в 9 годині по UTC
    const workingEndHour = 17;  // Кінець робочого дня в 17 годині по UTC

    const hour = date.getUTCHours();

    // Перевірка, чи поточний час в межах робочого часу
    return hour >= workingStartHour && hour < workingEndHour;
}

let eventDate = new Date("2023-09-15T14:00:00Z");
console.log(isDuringUTCWorkingHours(eventDate)); // Виведе true

У цьому прикладі ми розробляємо функцію isEarlierByUTCMinutes, яка визначає, чи є перший часовий момент раніше за другий, порівнюючи їх за кількістю хвилин, що пройшли від початку доби в UTC. Для цього ми перетворюємо кожний часовий момент у відповідну кількість хвилин, використовуючи методи getUTCHours() і getUTCMinutes(). Після цього ми можемо просто порівняти два отриманих значення. Функція повертає true, якщо перший часовий момент раніше за другий, і false у протилежному випадку.

function isEarlierByUTCMinutes(firstDate, secondDate) {
    // Отримуємо хвилини для обох дат
    const firstMinutes = firstDate.getUTCHours() * 60 + firstDate.getUTCMinutes();
    const secondMinutes = secondDate.getUTCHours() * 60 + secondDate.getUTCMinutes();

    // Порівнюємо отримані значення
    return firstMinutes < secondMinutes;
}

const date1 = new Date("2023-09-15T12:05:00Z");
const date2 = new Date("2023-09-15T13:03:00Z");

console.log(isEarlierByUTCMinutes(date1, date2)); // Виведе true