JS метод Date.getMonth()
Загальний опис
Date.prototype.getMonth() - це метод об'єкта Date в JavaScript, який призначений для отримання місяця вказаної дати відповідно до місцевого часу. Індекс місяця, який повертається цим методом, починається з 0 для січня і закінчується значенням 11 для грудня. Це означає, що для отримання традиційного номера місяця (1 для січня, 12 для грудня) вам потрібно буде додати 1 до результату методу.
Застосування цього методу дуже корисне в різних задачах програмування, зокрема при роботі з датами і часом. Він допомагає дізнатися, в якому місяці відбулося певна подія, або визначити часовий проміжок між двома датами. Прикладом може бути виведення повідомлення користувачеві про те, який зараз місяць, або відстеження активності користувача на веб-сайті по місяцям.
Приклад:
let currentDate = new Date();
let currentMonth = currentDate.getMonth();
console.log(`Поточний місяць має індекс: ${currentMonth}`);
В цьому прикладі ми створюємо новий об'єкт дати, що представляє поточний час і дату, а потім за допомогою getMonth() отримуємо індекс місяця.
Важливо пам'ятати, що Date.prototype.getMonth() повертає індекс місяця, який починається з 0 (для січня) і доходить до 11 (для грудня). Тому, якщо ви хочете отримати звичайний номер місяця, додайте 1 до результату.
Приклад:
let date = new Date();
let humanReadableMonth = date.getMonth() + 1;
console.log(`Поточний місяць: ${humanReadableMonth}`);
Також важливо пам'ятати, що Date.prototype.getMonth() відображає місяць відповідно до місцевого часу користувача. Це може призвести до відмінностей результатів при використанні в різних часових поясах.
- Порада
-
Якщо ви активно працюєте з датами і часом в різних часових поясах або потребуєте виконувати складні операції (наприклад, порівняння, додавання, віднімання), рекомендується використовувати спеціалізовані бібліотеки, такі як
автор: BondMoment.jsабоDate-fns. Ці бібліотеки значно спрощують роботу з датами і підвищують продуктивність. - Нотатка
-
При розробці функцій, що опрацьовують діапазони дат, не забувайте про особливість індексації місяців. Це може викликати непередбачувані помилки, особливо якщо ви спробуєте встановити місяць без урахування цього.
Приклад:
автор: Bondlet startMonth = 3; // Квітень let date = new Date(); date.setMonth(startMonth - 1); // Встановлюємо березень через індексацію
Синтаксис
getMonth()
Повернення
integer-
Повертає місяць вказаної дати як число від 0 до 11, де 0 відповідає січню, а 11 - грудню.
автор: Bond
Переглядачі
| Переглядач | |||||
|---|---|---|---|---|---|
| 1 | 1 | 1 | 3 | 12 |
| Переглядач | ||||
|---|---|---|---|---|
| 4.4 | 18 | 4 | 1 |
| Переглядач | ||
|---|---|---|
| 0.10.0 | 1.0 |
Приклади
+ запропонувати свій приклад у пісочниці
У цьому прикладі, при натисканні на кнопку, використовується метод Date.prototype.getMonth() для отримання поточного місяця як числа. Це число потім конвертується у назву місяця за допомогою масиву monthNames і відображається на сторінці.
У цьому прикладі ми створюємо новий об'єкт дати з допомогою new Date(). Потім ми отримуємо поточний місяць з допомогою методу getMonth(). І в залежності від отриманого місяця, ми визначаємо пору року.
// Створюємо новий об'єкт дати
let currentDate = new Date();
// Отримуємо поточний місяць
let currentMonth = currentDate.getMonth();
// Визначаємо пору року на основі поточного місяця
let season;
if (currentMonth >= 2 && currentMonth <= 4) {
season = "весна";
} else if (currentMonth >= 5 && currentMonth <= 7) {
season = "літо";
} else if (currentMonth >= 8 && currentMonth <= 10) {
season = "осінь";
} else {
season = "зима";
}
console.log(`Зараз ${season}!`);
У цьому прикладі ми припускаємо, що маємо місяць дня народження користувача, який зберігається в константі BIRTHDAY_MONTH. Ми отримуємо поточний місяць з допомогою методу getMonth() і порівнюємо його з місяцем дня народження. Якщо вони співпадають, ми виводимо привітання користувачеві.
// Припустимо, що день народження користувача у вересні
const BIRTHDAY_MONTH = 8; // вересень (0-січень, 8-вересень)
// Отримуємо поточну дату та місяць
let today = new Date();
let thisMonth = today.getMonth();
// Перевіряємо, чи сьогодні місяць дня народження користувача
if (thisMonth === BIRTHDAY_MONTH) {
console.log("Вітаємо з місяцем вашого дня народження!");
} else {
console.log("Сьогодні не місяць вашого дня народження.");
}
Коментарі
Коментарів ще немає — будьте першим!