Калькулятор номера недели ISO

Введите одну точную дату и получите ее ISO-метку недели, ISO-неделю-года и границы с понедельника по воскресенье для табелей, спринтов и графиков поставки.

Как это работает

Формула

isoWeekday=((weekday06+6)mod7)+1\text{isoWeekday} = ((\text{weekday}_{0-6} + 6) \bmod 7) + 1

isoWeekYear=year(date+(4isoWeekday) days)\text{isoWeekYear} = \text{year}(\text{date} + (4 - \text{isoWeekday})\text{ days})

isoWeekNumber=1+weekStartweek1Start7 days\text{isoWeekNumber} = 1 + \left\lfloor \dfrac{\text{weekStart} - \text{week1Start}}{7\text{ days}} \right\rfloor

Переменные, обозначения и единицы

isoWeekday\text{isoWeekday}

Номер ISO-дня недели, где понедельник = 1, а воскресенье = 7

weekday06\text{weekday}_{0-6}

Индекс григорианского дня недели, где воскресенье = 0, а суббота = 6

weekStart\text{weekStart}

UTC-дата понедельника, с которого начинается ISO-неделя введенной даты

week1Start\text{week1Start}

UTC-дата понедельника, с которого начинается ISO-неделя 1 определенного ISO-неделе-года
Как выполняется расчёт

Введите одну точную дату, и калькулятор применит только правила ISO 8601 для недель. Главный результат показывает метку ISO-недели, а вспомогательные строки — ISO-неделю-года и точные границы недели с понедельника по воскресенье.

Определение ISO-недели:

  1. Строго разберите введенное значение как одну дату ISO-календаря.
  2. Преобразуйте григорианский день недели в нумерацию ISO, где понедельник = 1, а воскресенье = 7.
  3. Сместите эту дату к четвергу той же ISO-недели. Григорианский год этого четверга и есть ISO-неделя-года.
  4. Найдите понедельник, с которого начинается ISO-неделя 1 для этого ISO-неделе-года. ISO-неделя 1 — это неделя с понедельника по воскресенье, содержащая 4 января / первый четверг.
  5. Посчитайте полные недели от этого якоря ISO-недели 1 до понедельника недели введенной даты, чтобы получить номер ISO-недели.
  6. Верните итоговую метку ISO-недели и точные даты понедельника и воскресенья для соответствующей недели.

Частые вопросы

Как калькулятор определяет ISO-неделю-года?
Он строго следует ISO 8601. Калькулятор определяет ISO-день недели, смещает дату к четвергу этой же недели и использует этот четверг, чтобы определить ISO-неделю-года.
Почему 1 января может относиться к предыдущему ISO-неделе-году?
Потому что ISO-неделя 1 — это неделя, содержащая 4 января, то есть неделя с первым четвергом года. Если 1 января попадает раньше этой опорной недели, дата остается в предыдущем ISO-неделе-году.
Почему 31 декабря может относиться к следующему ISO-неделе-году?
По той же причине в обратную сторону. Если неделя с понедельника по воскресенье, содержащая 31 декабря, одновременно содержит 4 января или первый четверг следующего года, вся эта неделя становится ISO-неделей 1 следующего ISO-неделе-года.
Учитываются ли местные правила рабочей недели, зарплаты или праздников?
Нет. Этот калькулятор использует только правила ISO-недели: недели начинаются в понедельник, ISO-дни недели нумеруются от 1 до 7, а неделя 1 определяется правилом 4 января / первого четверга.
Чем это отличается от Day of Week, Date Add/Subtract и Weekdays Calculator?
Эта страница решает одну задачу: к какой ISO-неделе относится одна точная дата? Day of Week подписывает дату, Date Add/Subtract преобразует дату, а Weekdays Calculator считает дни внутри диапазона.

Похожие калькуляторы

Все калькуляторы

Готовы считать?

Бесплатные калькуляторы.