Learn JavaScript

getUTCSeconds() - получение секунд по UTC в JavaScript

getUTCSeconds() возвращает секунды из объекта Date по UTC.

Если говорить просто, этот метод достаёт секунды из даты и времени, например 0, 15, 45 или 59, но делает это не по локальному времени пользователя, а по всемирному времени UTC.

Синтаксис

Базовая запись выглядит так:

date.getUTCSeconds()

Где:

  • date - это объект Date

Аргументы этому методу не нужны.

Что возвращает getUTCSeconds()

Метод возвращает число от 0 до 59.

const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 45));

console.log(date.getUTCSeconds()); // 45
console.log(typeof date.getUTCSeconds()); // "number"

Это важно:

  • 0 - начало новой минуты
  • 30 - середина минуты
  • 59 - последняя секунда перед следующей минутой

Простой пример

const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 45));

console.log(date.getUTCSeconds()); // 45

Здесь:

  • 2025 - год
  • 0 - январь
  • 15 - день месяца
  • 14 - часы
  • 30 - минуты
  • 45 - секунды

Метод возвращает 45, потому что это секунды в указанной дате по UTC.

Пример с началом и концом минуты

const start = new Date(Date.UTC(2025, 0, 15, 14, 30, 0));
const end = new Date(Date.UTC(2025, 0, 15, 14, 30, 59));

console.log(start.getUTCSeconds()); // 0
console.log(end.getUTCSeconds()); // 59

Так хорошо видно, что диапазон значений идёт от 0 до 59.

getUTCSeconds() не возвращает минуты

Это одна из самых частых ошибок.

getUTCSeconds() отвечает только за секунды. Минуты и часы он не возвращает.

const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 45));

console.log(date.getUTCSeconds()); // 45

Чем getUTCSeconds() отличается от getUTCMinutes()

Эти методы легко перепутать.

  • getUTCSeconds() возвращает секунды по UTC
  • getUTCMinutes() возвращает минуты по UTC
const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 45));

console.log(date.getUTCSeconds()); // 45
console.log(date.getUTCMinutes()); // 30

getUTCSeconds() не меняет дату

Метод только читает значение секунд.

Он не изменяет исходный объект Date.

const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 45));
const seconds = date.getUTCSeconds();

console.log(seconds); // 45
console.log(date); // исходная дата остаётся той же

getUTCSeconds() работает именно по UTC

Это главный момент.

Метод getUTCSeconds() всегда смотрит на дату с точки зрения UTC.

Если вам нужны секунды по локальному времени пользователя, используют getSeconds().

Чем getUTCSeconds() отличается от getSeconds()

Разница такая:

  • getUTCSeconds() возвращает секунды по UTC
  • getSeconds() возвращает секунды по локальному времени

Во многих случаях результат совпадёт, но при работе с UTC всё равно лучше использовать правильный метод.

const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 45));

console.log(date.getUTCSeconds()); // 45

Если вы работаете с UTC, серверным временем и ISO-строками, этот нюанс важно учитывать.

Когда это полезно

getUTCSeconds() особенно удобен, когда:

  • дата хранится в UTC
  • вы работаете с серверным временем
  • нужно одинаковое поведение независимо от часового пояса пользователя
  • вы выводите точное время, логи или метки по UTC

Пример:

const date = new Date("2025-01-15T14:30:00Z");

if (date.getUTCSeconds() === 0) {
  console.log("По UTC началась новая минута");
}

Пример для вывода времени по UTC

Метод часто используют вместе с getUTCHours() и getUTCMinutes().

const date = new Date(Date.UTC(2025, 0, 15, 9, 5, 7));

console.log(date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds()); // 9 5 7

Если нужен красивый формат вроде 09:05:07, секунды обычно дополнительно дополняют нулём.

Невалидная дата даёт NaN

Если объект Date содержит некорректную дату, результатом будет NaN.

const date = new Date("invalid");

console.log(date.getUTCSeconds()); // NaN

Это полезно помнить, если дата приходит из формы, API или пользовательского ввода.

getUTCSeconds() не создаёт дату и не форматирует строку

Этот метод не создаёт новую дату и не превращает её в текст.

Он только возвращает число секунд по UTC.

const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 45));

console.log(date.getUTCSeconds()); // 45

Если нужен красивый вывод времени, его придётся формировать отдельно.

Частые ошибки

Путать getUTCSeconds() и getUTCMinutes()

const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 45));

console.log(date.getUTCSeconds()); // 45
console.log(date.getUTCMinutes()); // 30

Это два разных метода.

Ожидать диапазон не от 0 до 59

const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 0));

console.log(date.getUTCSeconds()); // 0

В JavaScript секунды идут от 0 до 59.

Путать getUTCSeconds() и getSeconds()

const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 45));

console.log(date.getUTCSeconds()); // 45

Если нужен именно UTC, используйте getUTCSeconds(), а не getSeconds().

Вызывать getUTCSeconds() не у объекта Date

Правильно:

const date = new Date();

console.log(date.getUTCSeconds());

Неправильно:

Date.getUTCSeconds();

Метод getUTCSeconds() работает у экземпляра Date, а не у самого объекта Date.

Ожидать локальное время вместо UTC

getUTCSeconds() специально работает по UTC, а не по часовому поясу пользователя.

Если нужны секунды по локальному времени, лучше использовать getSeconds().

Не учитывать NaN у невалидной даты

const date = new Date("invalid");

console.log(date.getUTCSeconds()); // NaN

Если дата может быть некорректной, полезно сначала проверить сам объект даты.

Быстрая памятка

  • getUTCSeconds() вызывается у объекта Date
  • метод возвращает секунды числом
  • диапазон значений: от 0 до 59
  • 0 - это начало новой минуты
  • getUTCSeconds() не возвращает минуты
  • для минут есть getUTCMinutes()
  • getUTCSeconds() работает по UTC
  • для локального времени есть getSeconds()
  • у невалидной даты результатом будет NaN

Коротко

getUTCSeconds() в JavaScript нужен, чтобы получить секунды из объекта Date по всемирному времени UTC. Главное, что стоит запомнить: метод возвращает число от 0 до 59, не зависит от локального часового пояса пользователя, не изменяет саму дату и его очень важно не путать с getUTCMinutes(), который отвечает уже за минуты.