Flatpickr использует параметр dateFormat, который
отвечает за форматирование отображаемой даты в поле ввода.
Форматирование строится на наборе токенов, каждый из которых заменяется
на соответствующую часть даты: день, месяц, год, а также дополнительные
элементы (например, день недели).
Строка формата представляет собой последовательность символов и специальных токенов:
dateFormat: "d.m.Y"
Любой символ, не являющийся токеном, выводится как есть. Токены заменяются значениями даты.
Ключевая особенность системы — строгое различие между числовыми и текстовыми представлениями, а также между вариантами с ведущими нулями и без них.
d — день месяца с ведущим нулём
Пример: 01, 09, 23
j — день месяца без ведущего нуля
Пример: 1, 9, 23
Эти два токена используются чаще всего при работе с числовыми датами.
D — краткое название дня недели
Пример: Mon, Tue, Wed
l (строчная L) — полное название
дня недели Пример: Monday, Tuesday,
Wednesday
Эти токены зависят от локали и могут меняться при смене языка интерфейса.
m — месяц с ведущим нулём Пример:
01 — январь, 12 — декабрь
n — месяц без ведущего нуля Пример:
1 — январь, 12 — декабрь
Числовые токены используются при интеграции с API и серверными системами, где важна строгая структура даты.
M — краткое название месяца Пример:
Jan, Feb, Mar
F — полное название месяца Пример:
January, February, March
Текстовые формы полностью зависят от локализации и параметра
locale.
Y — полный год (4 цифры) Пример:
2026, 1998
y — сокращённый год (2 цифры)
Пример: 26, 98
Использование y может приводить к неоднозначности при
работе с историческими или долгосрочными данными, поэтому предпочтение
обычно отдаётся Y.
Форматирование даты в Flatpickr строится через объединение токенов в одной строке:
d.m.Y → 30.05.2026j F Y → 30 May 2026D, j M Y → Sat, 30 May 2026l, d F Y → Saturday, 30 May 2026Разделители (точки, пробелы, запятые) не интерпретируются как часть формата и выводятся напрямую.
Если необходимо вывести символ, который совпадает с токеном, используется обратный слэш:
dateFormat: "d \\d\\e F \\m\\e\\s\\y\\a\\c\\a Y"
Пример результата:
30 de May mesyaca 2026
Любой символ после \ воспринимается как литерал.
Форматирование месяцев и дней недели зависит от настроек
locale.
January, MondayЯнварь, Понедельникjanvier, lundiЧисловые токены (d, m, Y) не
зависят от языка и остаются неизменными.
d.m.Y
Используется в большинстве стран Европы.
m/d/Y
l, F j, Y
Y-m-d
Формат dateFormat влияет только на отображение в
input-поле. Внутреннее значение даты в Flatpickr хранится как объект
Date JavaScript, что позволяет:
При включённом ручном вводе формат строки определяет:
Несовпадение формата и реального ввода приводит к ошибкам парсинга,
особенно при использовании текстовых месяцев (F,
M), где локализация критична.
mm вместо m (в Flatpickr нет
отдельного токена с двойным смыслом)F,
M, D, lDD/MM/YYYY как единственный источник без адаптации токенов
Flatpickr)Система форматирования даты в Flatpickr опирается на три слоя:
d, j,
D, l)m, n,
M, F)Y, y)Их комбинация вместе с разделителями и экранированием формирует полный контроль над строковым представлением даты без изменения внутренней модели данных.