Date.prototype.setFullYear()
Базовый уровень Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в разных версиях браузеров. Она доступна в браузерах с июля 2015 года.
Метод setFullYear() объектов Date изменяет год, месяц и/или день месяца для этой даты в соответствии с местным временем.
Попробуйте
const event = new Date("August 19, 1975 23:15:30");
event.setFullYear(1969);
console.log(event.getFullYear());
// Expected output: 1969
event.setFullYear(0);
console.log(event.getFullYear());
// Expected output: 0
Синтаксис
setFullYear(yearValue) setFullYear(yearValue, monthValue) setFullYear(yearValue, monthValue, dateValue)
Параметры
-
yearValue - Целое число, представляющее год. Например, 1995.
-
monthValueНеобязательный - Целое число, представляющее месяц: 0 для января, 1 для февраля и так далее.
-
dateValueНеобязательный - Целое число от 1 до 31, представляющее день месяца. Если вы указываете
dateValue, вы также должны указатьmonthValue.
Возвращаемое значение
Изменяет объект Date на месте и возвращает его новый временную метку. Если параметр является NaN (или другими значениями, которые приводятся к NaN, например undefined), дата устанавливается как Invalid Date, и возвращается NaN.
Описание
Если вы не указываете параметры monthValue и dateValue, используются те же значения, что возвращаются методами getMonth() и getDate().
Если указанный вами параметр выходит за пределы ожидаемого диапазона, другие параметры и информация о дате в объекте Date соответственно обновляются. Например, если вы указываете 15 для monthValue, год увеличивается на 1 (yearValue + 1), а для месяца используется 3.
Поскольку setFullYear() работает с местным временем, пересечение границы летнего времени (DST) может привести к другому прошедшему времени, чем ожидалось. Например, если установка даты пересекает переход вперед весной (потеря часа), разница во временных метках между новой и старой датой на один час меньше, чем номинальная разница в днях, умноженная на 24 часа. И наоборот, пересечение обратного перехода осенью (прибавление часа) приведет к дополнительному часу. Если вам нужно скорректировать дату на фиксированное количество времени, рассмотрите возможность использования setUTCFullYear() или setTime().
Если новое местное время попадает в переход смещения, точное время определяется с использованием того же поведения, что и параметр disambiguation: "compatible" в Temporal. То есть, если местное время соответствует двум моментам, выбирается более ранний; если местное время не существует (есть разрыв), мы движемся вперед на продолжительность разрыва.
Примеры
Использование setFullYear()
const theBigDay = new Date(); theBigDay.setFullYear(1997);
Спецификации
Совместимость с браузерами
| Настольные компьютеры | Мобильные устройства | Сервер | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | WebView на iOS | Bun | Deno | Node.js | |
setFullYear |
1 |
12 |
1 |
4 |
1 |
18 |
4 |
10.1 |
1 |
1.0 |
4.4 |
1 |
1.0.0 |
1.0 |
0.10.0 |
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/setFullYear