getSeconds() возвращает секунды из объекта Date.
Если говорить просто, этот метод достаёт секунды из даты и времени, например 0, 15, 45 или 59.
Синтаксис
Базовая запись выглядит так:
date.getSeconds()
Где:
date- это объектDate
Аргументы этому методу не нужны.
Что возвращает getSeconds()
Метод возвращает число от 0 до 59.
const date = new Date(2025, 0, 15, 14, 30, 45);
console.log(date.getSeconds()); // 45
console.log(typeof date.getSeconds()); // "number"
Это важно:
0- начало новой минуты30- середина минуты59- последняя секунда перед следующей минутой
Простой пример
const date = new Date(2025, 0, 15, 14, 30, 45);
console.log(date.getSeconds()); // 45
Здесь:
2025- год0- январь15- день месяца14- часы30- минуты45- секунды
Метод возвращает 45, потому что это секунды в указанной дате.
Пример с началом и концом минуты
const start = new Date(2025, 0, 15, 14, 30, 0);
const end = new Date(2025, 0, 15, 14, 30, 59);
console.log(start.getSeconds()); // 0
console.log(end.getSeconds()); // 59
Так хорошо видно, что диапазон значений идёт от 0 до 59.
getSeconds() не возвращает минуты
Это одна из самых частых ошибок.
getSeconds() отвечает только за секунды. Минуты и часы он не возвращает.
const date = new Date(2025, 0, 15, 14, 30, 45);
console.log(date.getSeconds()); // 45
Чем getSeconds() отличается от getMinutes()
Эти методы легко перепутать.
getSeconds()возвращает секундыgetMinutes()возвращает минуты
const date = new Date(2025, 0, 15, 14, 30, 45);
console.log(date.getSeconds()); // 45
console.log(date.getMinutes()); // 30
getSeconds() не меняет дату
Метод только читает значение секунд.
Он не изменяет исходный объект Date.
const date = new Date(2025, 0, 15, 14, 30, 45);
const seconds = date.getSeconds();
console.log(seconds); // 45
console.log(date); // исходная дата остаётся той же
getSeconds() работает по локальному времени
Это важный момент.
Метод getSeconds() смотрит на дату с точки зрения локального часового пояса пользователя.
Если вам нужны секунды именно по UTC, используют getUTCSeconds().
Чем getSeconds() отличается от getUTCSeconds()
Разница такая:
getSeconds()возвращает секунды по локальному времениgetUTCSeconds()возвращает секунды поUTC
Во многих случаях результат совпадёт, но при работе с UTC всё равно лучше использовать правильный метод.
const date = new Date(Date.UTC(2025, 0, 15, 14, 30, 45));
console.log(date.getUTCSeconds()); // 45
Если вы работаете с UTC, серверным временем и ISO-строками, этот нюанс важно учитывать.
Когда это полезно
getSeconds() особенно удобен, когда:
- нужно получить секунды из даты
- вы выводите точное время
- проверяете, наступил ли новый момент времени
- собираете строку вроде
14:30:45
Пример:
const date = new Date();
if (date.getSeconds() === 0) {
console.log("Началась новая минута");
}
Пример для вывода времени
Метод часто используют вместе с getHours() и getMinutes().
const date = new Date(2025, 0, 15, 9, 5, 7);
console.log(date.getHours(), date.getMinutes(), date.getSeconds()); // 9 5 7
Если нужен красивый формат вроде 09:05:07, секунды обычно дополнительно дополняют нулём.
Невалидная дата даёт NaN
Если объект Date содержит некорректную дату, результатом будет NaN.
const date = new Date("invalid");
console.log(date.getSeconds()); // NaN
Это полезно помнить, если дата приходит из формы, API или пользовательского ввода.
getSeconds() не создаёт дату и не форматирует строку
Этот метод не создаёт новую дату и не превращает её в текст.
Он только возвращает число секунд.
const date = new Date(2025, 0, 15, 14, 30, 45);
console.log(date.getSeconds()); // 45
Если нужен красивый вывод времени, его придётся формировать отдельно.
Частые ошибки
Путать getSeconds() и getMinutes()
const date = new Date(2025, 0, 15, 14, 30, 45);
console.log(date.getSeconds()); // 45
console.log(date.getMinutes()); // 30
Это два разных метода.
Ожидать диапазон не от 0 до 59
const date = new Date(2025, 0, 15, 14, 30, 0);
console.log(date.getSeconds()); // 0
В JavaScript секунды идут от 0 до 59.
Вызывать getSeconds() не у объекта Date
Правильно:
const date = new Date();
console.log(date.getSeconds());
Неправильно:
Date.getSeconds();
Метод getSeconds() работает у экземпляра Date, а не у самого объекта Date.
Забывать про локальное время
getSeconds() использует локальный часовой пояс пользователя.
Если важен именно UTC, лучше смотреть в сторону getUTCSeconds().
Не учитывать NaN у невалидной даты
const date = new Date("invalid");
console.log(date.getSeconds()); // NaN
Если дата может быть некорректной, полезно сначала проверить сам объект даты.
Быстрая памятка
getSeconds()вызывается у объектаDate- метод возвращает секунды числом
- диапазон значений: от
0до59 0- это начало новой минутыgetSeconds()не возвращает минуты- для минут есть
getMinutes() getSeconds()работает по локальному времени- для
UTCестьgetUTCSeconds() - у невалидной даты результатом будет
NaN
Коротко
getSeconds() в JavaScript нужен, чтобы получить секунды из объекта Date. Главное, что стоит запомнить: метод возвращает число от 0 до 59, работает по локальному времени, не изменяет саму дату и его очень важно не путать с getMinutes(), который отвечает уже за минуты.