Learn JavaScript

getFullYear() - получение года из даты в JavaScript

getFullYear() возвращает год из объекта Date.

Если говорить просто, этот метод берёт дату и достаёт из неё полный год, например 2025.

Синтаксис

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

date.getFullYear()

Где:

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

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

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

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

const date = new Date(2025, 0, 15);

console.log(date.getFullYear()); // 2025
console.log(typeof date.getFullYear()); // "number"

Это важно: getFullYear() возвращает именно число, а не строку.

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

const date = new Date(2025, 0, 15);

console.log(date.getFullYear()); // 2025

Здесь:

  • 2025 - год
  • 0 - январь
  • 15 - день месяца

Метод просто возвращает год из этой даты.

Пример с текущей датой

Очень часто getFullYear() используют, чтобы получить текущий год.

const now = new Date();

console.log(now.getFullYear());

Так, например, часто выводят год в футере сайта.

const year = new Date().getFullYear();

console.log(year);

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

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

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

const date = new Date(2025, 0, 15);
const year = date.getFullYear();

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

getFullYear() работает по локальному времени

Это важный момент.

Метод getFullYear() смотрит на дату с точки зрения локального часового пояса пользователя.

Если вам нужен год именно по UTC, используют getUTCFullYear().

Чем getFullYear() отличается от getUTCFullYear()

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

  • getFullYear() возвращает год по локальному времени
  • getUTCFullYear() возвращает год по UTC

Обычно результат одинаковый, но возле границы года он может отличаться.

const date = new Date(Date.UTC(2025, 0, 1, 0, 0, 0));

console.log(date.getUTCFullYear()); // 2025

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

Чем getFullYear() отличается от getYear()

Иногда новички случайно используют старый метод getYear(), но делать так не стоит.

const date = new Date(2025, 0, 15);

console.log(date.getYear()); // 125
console.log(date.getFullYear()); // 2025

getYear() считается устаревшим и ведёт себя неудобно, потому что не возвращает обычный полный год.

На практике почти всегда нужен именно getFullYear().

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

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

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

Пример:

const createdAt = new Date("2025-06-10");

if (createdAt.getFullYear() === 2025) {
  console.log("Запись создана в 2025 году");
}

Проверка года у разных дат

Метод удобно использовать, когда нужно быстро достать год из нескольких значений.

const first = new Date(2024, 11, 31);
const second = new Date(2025, 0, 1);

console.log(first.getFullYear()); // 2024
console.log(second.getFullYear()); // 2025

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

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

const date = new Date("invalid");

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

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

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

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

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

const date = new Date(2025, 0, 15);

console.log(date.getFullYear()); // 2025

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

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

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

Правильно:

const date = new Date();

console.log(date.getFullYear());

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

Date.getFullYear();

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

Путать getFullYear() и getYear()

const date = new Date(2025, 0, 15);

console.log(date.getYear()); // 125

Если нужен обычный год вроде 2025, используйте getFullYear().

Ожидать строку вместо числа

const year = new Date().getFullYear();

console.log(typeof year); // "number"

Результат метода - число.

Забывать про локальное время

getFullYear() использует локальный часовой пояс пользователя.

Если важен именно UTC, лучше смотреть в сторону getUTCFullYear().

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

const date = new Date("invalid");

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

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

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

  • getFullYear() вызывается у объекта Date
  • метод возвращает год числом
  • аргументы ему не нужны
  • getFullYear() работает по локальному времени
  • для UTC есть getUTCFullYear()
  • вместо старого getYear() почти всегда нужен getFullYear()
  • у невалидной даты результатом будет NaN

Коротко

getFullYear() в JavaScript нужен, чтобы получить год из объекта Date. Главное, что стоит запомнить: метод возвращает число, работает по локальному времени, не изменяет саму дату и почти всегда должен использоваться вместо устаревшего getYear().