date-fns Playground
Тестирайте и експериментирайте с функции на date-fns библиотеката в живо JavaScript playground с моментален резултат
Вход
Изход
Прочети ме
Какво е date-fns?
date-fns е модерна JavaScript библиотека за работа с дати, която предоставя всеобхватни, последователни и надеждни инструменти за манипулиране на дати в JavaScript. За разлика от родния JavaScript обект Date, който има много странности и несъответствия, date-fns предлага модулен, функционален подход към манипулирането на дати. Тя е tree-shakeable, което означава, че включвате само функциите, които действително използвате, поддържайки размера на вашия bundle минимален. Библиотеката поддържа над 200 функции, покриващи всичко от форматиране и парсване до сравняване, манипулиране и локализиране на дати.
Защо да използвам playground за date-fns?
Работата с дати в JavaScript може да бъде трудна—часовите зони, форматните шаблони и аритметиката на датите често водят до неочаквани резултати. Среда на playground ви позволява да експериментирате с функции на date-fns в реално време, да видите незабавен резултат и да научите API без да настройвате пълен проект. Идеално е за тестване на форматни низове, отстраняване на грешки при изчисления на дати или бързо прототипиране на логика на дати преди интегрирането й в вашето приложение.
Описание на инструмента
Playground на date-fns е интерактивна среда за кодиране, която ви позволява да пишете и изпълнявате JavaScript код с предварително зареденото цялата библиотека date-fns. Цялата библиотека date-fns е достъпна чрез обекта dateFns, давайки ви достъп до всички 200+ функции. Кодът се изпълнява автоматично докато пишете (с debouncing), и всички резултати от console.log, console.warn и console.error се появяват в вградения терминал под редактора. Това го прави идеален за изучаване на date-fns, тестване на операции с дати и експериментиране с различни опции за форматиране.
Примери
Форматиране на текущата дата:
const now = new Date();
console.log(dateFns.format(now, "MMMM do, yyyy"));
// Резултат: December 30th, 2025Изчисляване на дни между две дати:
const start = new Date(2025, 0, 1);
const end = new Date(2025, 11, 31);
console.log(dateFns.differenceInDays(end, start) + " дни");
// Резултат: 364 дниДобавяне на време към дата:
const today = new Date();
const nextWeek = dateFns.addWeeks(today, 1);
const nextMonth = dateFns.addMonths(today, 1);
console.log("Следваща седмица:", dateFns.format(nextWeek, "yyyy-MM-dd"));
console.log("Следващ месец:", dateFns.format(nextMonth, "yyyy-MM-dd"));Проверка дали дата е в миналото или бъдещето:
const date = new Date(2024, 5, 15);
console.log("Е ли в миналото?", dateFns.isPast(date));
console.log("Е ли в бъдещето?", dateFns.isFuture(date));Парсване на низ с дата:
const parsed = dateFns.parse("25/12/2025", "dd/MM/yyyy", new Date());
console.log(dateFns.format(parsed, "EEEE, MMMM do, yyyy"));
// Резултат: Thursday, December 25th, 2025Функции
- Пълна библиотека date-fns: Достъп до всички 200+ функции на date-fns чрез обекта
dateFns - Живо изпълнение на код: Кодът се изпълнява автоматично докато пишете с интелигентно debouncing
- Вграден терминал: Преглед на резултата от конзолата незабавно без инструменти за разработчик на браузъра
- Подсветяване на синтаксис: Подсветяване на синтаксис на JavaScript за по-добра четливост на кода
- Обработка на грешки: Грешките при изпълнение се показват ясно в резултата на терминала
Случаи на употреба
- Изучаване на date-fns: Експериментирайте с различни функции и вижте резултатите незабавно без настройка на проект
- Тестване на формат на дата: Опитайте различни форматни низове, за да намерите точния модел на резултата, който ви трябва
- Прототипиране на изчисления на дати: Тестирайте сложна аритметика на дати като добавяне на работни дни, намиране на интервали или сравняване на дати
- Отстраняване на грешки в логиката на датите: Изолирайте и тестирайте фрагменти от код, свързани с дати от вашите проекти
- Бързи преобразувания на дати: Преобразувайте между формати на дати или изчислявайте разликите във времето на лету
Често използвани функции на date-fns
| Функция | Описание | Пример |
|---|---|---|
format |
Форматиране на дата в низ | dateFns.format(date, "yyyy-MM-dd") |
parse |
Парсване на низ в дата | dateFns.parse("2025-01-01", "yyyy-MM-dd", new Date()) |
addDays |
Добавяне на дни към дата | dateFns.addDays(date, 7) |
subMonths |
Изваждане на месеци от дата | dateFns.subMonths(date, 3) |
differenceInDays |
Получаване на дни между дати | dateFns.differenceInDays(dateA, dateB) |
isAfter |
Проверка дали дата е след друга | dateFns.isAfter(dateA, dateB) |
isBefore |
Проверка дали дата е преди друга | dateFns.isBefore(dateA, dateB) |
startOfMonth |
Получаване на първия ден на месец | dateFns.startOfMonth(date) |
endOfYear |
Получаване на последния момент на година | dateFns.endOfYear(date) |
formatDistance |
Разлика във времето в човешки формат | dateFns.formatDistance(dateA, dateB) |
Справка на токени за форматиране
| Токен | Описание | Пример |
|---|---|---|
yyyy |
4-цифрена година | 2025 |
MM |
2-цифрен месец | 01-12 |
MMMM |
Пълно име на месец | January |
dd |
2-цифрен ден | 01-31 |
do |
Ден с редност | 1st, 2nd, 3rd |
EEEE |
Пълно име на ден | Monday |
EEE |
Кратко име на ден | Mon |
HH |
Час в 24-часов формат | 00-23 |
hh |
Час в 12-часов формат | 01-12 |
mm |
Минути | 00-59 |
ss |
Секунди | 00-59 |
a |
AM/PM | AM, PM |