Калькулятор Дат

Додавайте чи віднімайте дні, тижні, місяці та роки; аналізуйте діапазони з підрахунком робочих та вихідних днів

Калькулятор Дат

Результат

Обчислена дата:03.08.2026
неділя1 дн.

Калькулятор Діапазону Дат

Історія обчислень

До 02.08.2026 додано 1 Дні
02.08.202603.08.2026
1 дн.

Про дати

Робочі дні

Робочі дні виключають суботу та неділю. Корисно для графіків проектів, контрактних термінів та SLA-вікон, які зупиняються на вихідних. Калькулятор крокує день за днем і рахує лише Пн–Пт.

Лише будні

Будні в цьому інструменті — з понеділка по п'ятницю, той самий набір Пн–Пт, що й Робочі дні, для юрисдикцій без даних про державні свята. Якщо потрібен календар з урахуванням свят, зберігайте їх окремо й пропускайте у власному циклі.

Аналіз діапазону дат

Виберіть дату початку й кінця, щоб побачити тривалість у днях, цілих тижнях, календарних місяцях та роках, кількості буднів і вихідних — рахується включно від початку до кінця.

Додати / відняти одиниці

Додавайте чи віднімайте дні, тижні, місяці, роки, години чи хвилини. Календарна арифметика використовує об'єкт Date браузера, тож високосні роки та короткі місяці обробляються автоматично.

Калькулятор Дат

Додавайте чи віднімайте дні, тижні, місяці та роки; аналізуйте діапазони з підрахунком робочих та вихідних днів

Можливості

  • Додавайте чи віднімайте дні, тижні, місяці, роки, години чи хвилини до будь-якої базової дати — з урахуванням календаря (високосні роки й короткі місяці обробляються об'єктом Date)
  • Режим робочих днів пропускає суботу та неділю в обох напрямках; додатні значення рухаються вперед, від'ємні — назад
  • Режим лише будні рахує лише з понеділка по п'ятницю — той самий набір Пн–Пт, корисно за відсутності даних про свята
  • Панель діапазону дат аналізує будь-який інтервал початок–кінець: усього днів, цілі тижні, календарні місяці та роки (з перенесенням дня), плюс підрахунок буднів і вихідних (обидва кінці включно)
  • Прокручувальна історія обчислень з останніми 10 операціями: базова дата, дата результату й день тижня результату — копіюйте будь-який історичний результат одним кліком
  • Мітка дня тижня малюється через Intl.DateTimeFormat, слідуючи активній мові сторінки («Monday» на /en, «Pazartesi» на /tr, «Montag» на /de)
  • Дати розбираються на місцевий полудень, щоб уникнути помилки на день, яка б'є Date.parse на рядках YYYY-MM-DD у поясах з від'ємним UTC
  • Результуючі дати форматуються через toLocaleDateString в активній локалі — без жорсткого en-US, назви місяців і числові формати слідують мові сторінки

Як використовувати

  1. Виберіть базову дату — введіть або клацніть Сьогодні, щоб зафіксувати поточну.
  2. Виберіть операцію: Додати, Відняти, Робочі дні чи Лише будні.
  3. Введіть, скільки обраної одиниці (днів, тижнів, місяців, років, годин, хвилин) застосувати; результат оновлюється миттєво.
  4. Прочитайте панель результату: обчислену дату, день тижня й зведення різниці; скопіюйте дату одним кліком.
  5. Для аналізу діапазону задайте дату початку й кінця в правій панелі, щоб побачити всього днів, тижні, місяці, роки, кількість буднів і вихідних.
  6. Останні обчислення залишаються у списку історії; скористайтеся кнопкою копіювання в будь-якому рядку, щоб повернути більш ранній результат.

Поради та найкращі практики

  • Використовуйте Робочі дні / Лише будні для дедлайнів проектів і контрактних SLA, які зупиняються на вихідних.
  • Діапазон дат працює в обох напрямках — якщо початок пізніший за кінець, калькулятор міняє їх місцями всередині.
  • Утримуйте спінер поля значення, щоб швидко пройти діапазон, спостерігаючи за оновленням результату.
  • Копіюйте з історії, щоб повернути вже обчислений результат без повторного введення.
  • Поєднуйте цей інструмент із Конвертером часових поясів, коли потрібні і календарний зсув, і зміна поясу.

Запитання та відповіді

Яка різниця між «Робочими днями» та «Лише будні»?

У цьому інструменті вони ідентичні — обидва пропускають суботу й неділю та крокують з понеділка по п'ятницю. Реальні календарі робочих днів також пропускають державні свята, але дані про свята залежать від юрисдикції (федеральні США, банківські свята Великої Британії, національні дні Туреччини тощо). Інструмент залишається загальним, пропускаючи лише вихідні; принесіть власний список свят для повністю локалізованого календаря робочих днів.

Як рахуються календарні місяці й роки в панелі діапазону?

Місяці обчислюються як (роки × 12) + місяці між початком і кінцем, потім зменшуються на одиницю, якщо день місяця кінця раніший за день місяця початку — тож 15 лют → 14 бер рахується як 0 місяців, а 15 лют → 15 бер — як 1. Роки зменшуються, якщо місяць кінця раніший за місяць початку, або той самий місяць, але день раніший. Це відповідає тому, як люди думають про річниці.

Чому загальна кількість днів іноді зміщена на один при перетині переходу DST?

Інструмент розбирає рядки YYYY-MM-DD на місцевий полудень, що ставить кожну дату на 12 годин від будь-якого краю опівночі/DST — уникає класичної пастки Date.parse, де «2026-03-08» у поясах з від'ємним UTC стає 2026-03-07 23:00. Загальна кількість днів використовує Math.round на дельті мілісекунд, тож 23-годинний день весняного переведення округлюється до 1 дня.

Додавання 1 місяця завжди потрапляє на той самий день місяця?

Майже — Date.setMonth у JavaScript переносить переповнення вперед. Додавання 1 місяця до 31 січ дає 3 бер у невисокосні роки (лют має 28 днів, тож день 31 лют стає днем 3 березня). Це відповідає більшості банківських та планувальних угод; якщо потрібне інше правило («затиснути до кінця місяця», «останній робочий день місяця»), виконуйте арифметику у своєму коді з явним затисканням.

Чи можу я відняти робочі дні, щоб знайти більш ранній дедлайн?

Так. Виберіть операцію Відняти з потрібною одиницею або використайте Робочі дні / Лише будні з від'ємним значенням — рушій крокує день за днем назад і рахує лише Пн–Пт.

Обчислення виконуються локально?

Так. Уся арифметика дат використовує вбудований об'єкт Date браузера; нічого не надсилається на сервер, історія не завантажується, і інструмент працює офлайн після кешування сторінки.

Чому відображуваний формат дати відрізняється на сторінках різних мов?

Результуючі дати й записи історії малюються через toLocaleDateString на активній мові, тому /en показує MM/DD/YYYY чи DD/MM/YYYY (залежно від варіанту en браузера), /de — DD.MM.YYYY, /fr — DD/MM/YYYY тощо. Внутрішнє обчислення працює в ISO YYYY-MM-DD; лише шар відображення слідує вашій локалі.

Чи розуміє інструмент високосні роки?

Так. Арифметика дат делегує вбудованому об'єкту Date, який знає, що в 2024 був 29 лют, а в 2025 ні. Додавання 1 року до 29 лют 2024 потрапляє на 1 бер 2025; це відповідає специфікації JavaScript і більшості календарних додатків. Для правила «затиснути до 28» у невисокосні роки виконуйте постобробку у власному коді.