JS метод Date.setFullYear()
Загальний опис
Date.prototype.setFullYear() — це метод для зміни року в існуючому об'єкті Date в JavaScript. Він дозволяє точно налаштовувати дати, коректуючи інші частини дати за необхідністю, що робить його незамінним для динамічної роботи з календарями, планувальниками та іншими додатками, де дати відіграють ключову роль.
Припустимо, вам потрібно встановити дату на 1 січня наступного року:
let today = new Date();
today.setFullYear(today.getFullYear() + 1, 0, 1);
console.log(today);
Ще одна цікава особливість полягає в корекції невірних дат. Якщо ви намагаєтеся встановити неіснуючу дату, таку як 30 лютого, метод автоматично коригує її:
let someDate = new Date(2022, 0, 31); // 31 січня 2022
someDate.setFullYear(2023, 1, 30); // Намагаємося встановити 30 лютого 2023
console.log(someDate); // Ви побачите 2 березня 2023
В інтерактивних застосуваннях метод Date.prototype.setFullYear() може бути використаний для створення динамічних календарів, де користувач може обирати рік. Наприклад, при виборі року у випадаючому меню, JavaScript може автоматично оновлювати дату, використовуючи цей метод.
| Порада: | Для більш складних обчислень чи порівнянь дат, розгляньте можливість використання числового результату методу |
| Порада: | Хоча це може здатися простим для початківців, важливо пам'ятати, що об'єкти |
| Порада: | Якщо вам потрібно виконувати операції з великою кількістю об'єктів |
Синтаксис
setFullYear(yearValue)
setFullYear(yearValue, monthValue)
setFullYear(yearValue, monthValue, dateValue)
Параметри
- *
yearValue Ціле число, що представляє рік. Наприклад, 1995.
monthValueЦіле число, що представляє місяць: 0 для січня, 1 для лютого тощо.
dateValueЦіле число від 1 до 31, що представляє день місяця. Якщо ви вказуєте
dateValue, вам також потрібно вказатиmonthValue.
Return
timestampМетод змінює об'єкт
Dateна місці та повертає його новий часовий штамп (timestamp). Якщо параметр єNaN(або іншими значеннями, які конвертуються вNaN, наприклад,undefined), дата встановлюється як "Invalid Date" і повертаєтьсяNaN.
Переглядачі
| Переглядач | |||||
|---|---|---|---|---|---|
1 |
1 |
1 |
3 |
12 |
| Переглядач | ||||
|---|---|---|---|---|
4.4 |
18 |
4 |
1 |
| Переглядач | ||
|---|---|---|
0.10.0 |
1.0 |
Приклади
У цьому прикладі користувач може бачити поточну дату та змінювати рік цієї дати. Для цього потрібно ввести новий рік в поле введення та натиснути кнопку. Результат після зміни відображається відразу на сторінці.
У цьому прикладі ми створюємо дату someDate з роком 2010. Потім за допомогою методу getFullYear() ми отримуємо поточний рік і використовуючи Date.prototype.setFullYear() змінюємо рік у даті someDate на поточний.
let someDate = new Date(2010, 5, 15); // Дата: 15 червня 2010 року
// Змінюємо рік для someDate на поточний
let currentYear = new Date().getFullYear();
someDate.setFullYear(currentYear);
console.log(someDate); // Дата: 15 червня поточного року (залежно від року виконання коду)
Ми починаємо з дати startDate, що представляє 1 січня 2022 року. Ідея прикладу - додати до цієї дати певну кількість років (addedYears). Щоб це зробити, ми комбінуємо методи getFullYear() та Date.prototype.setFullYear(). Зокрема, ми отримуємо поточний рік з startDate, додаємо до нього addedYears і встановлюємо новий рік для startDate.
let startDate = new Date(2022, 0, 1); // Дата: 1 січня 2022 року
// Додаємо до startDate 5 років
let addedYears = 5;
startDate.setFullYear(startDate.getFullYear() + addedYears);
console.log(startDate); // Дата: 1 січня 2027 року
