Date.prototype.setMonth
Устанавливает месяц.
Доступно с: ES1
Синтаксис
date.setMonth(monthIndex, day)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| monthIndex | number | Месяц от 0 до 11. Значения за пределами переносятся на другой год. |
| day | number | Необязательный. День месяца. |
Возвращаемое значение
numberНовая метка времени. Сам объект изменяется.
Примеры
Прибавить три месяца:
const date = new Date(2026, 10, 15);
date.setMonth(date.getMonth() + 3);
console.log(date.getFullYear(), date.getMonth() + 1, date.getDate());Результат:
2027 2 15Ловушка с концом месяца:
const date = new Date(2026, 0, 31);
date.setMonth(1);
console.log(date.getMonth() + 1, date.getDate());Результат:
3 3Примечания
В феврале нет 31 числа, поэтому лишние дни переносятся на март. Перед сменой месяца у дат в конце месяца ставьте день 1 или проверяйте результат.
См. также
- Date.prototype.getMonth — Возвращает месяц — число от 0 до 11.
- Date.prototype.setDate — Устанавливает день месяца — удобно прибавлять и вычитать дни.
В учебнике
- Дата и время — Объект Date в JavaScript: создание даты, чтение года, месяца и дня, изменение даты, разница между датами и формат ISO.