date-fns Lekplats
Testa och experimentera med date-fns‑biblioteksfunktioner i en live‑JavaScript‑lekplats med omedelbar utdata
Inmatning
Utdata
Readme
Vad är date-fns?
date-fns är ett modernt JavaScript‑datumbibliotek som erbjuder omfattande, konsekventa och pålitliga verktyg för att arbeta med datum i JavaScript. Till skillnad från det inbyggda JavaScript‑Date‑objektet, som har många egenheter och inkonsekvenser, erbjuder date-fns ett modulärt, funktionellt tillvägagångssätt för datummanipulation. Biblioteket är tree‑shakeable, vilket betyder att du bara inkluderar de funktioner du faktiskt använder, vilket håller paketstorleken minimal. Biblioteket stödjer över 200 funktioner som täcker allt från formatering och parsning till jämförelse, manipulation och lokalisering av datum.
Varför använda en date-fns‑playground?
Att arbeta med datum i JavaScript kan vara knepigt – tidszoner, formateringsmönster och datumaritmetik leder ofta till oväntade resultat. En playground‑miljö låter dig experimentera med date-fns‑funktioner i realtid, se omedelbar output och lära dig API‑et utan att sätta upp ett komplett projekt. Den är perfekt för att testa formatsträngar, felsöka datumberäkningar eller snabbt prototypa datumlogik innan du integrerar den i din applikation.
Verktygsbeskrivning
date-fns Playground är en interaktiv kodmiljö som låter dig skriva och köra JavaScript‑kod med hela date-fns‑biblioteket förladdat. Hela date-fns‑biblioteket är tillgängligt via objektet dateFns, vilket ger dig åtkomst till alla 200+ funktioner. Koden körs automatiskt när du skriver (med debouncing), och alla console.log, console.warn och console.error‑utdata visas i den inbyggda terminalen under editorn. Detta gör den idealisk för att lära sig date-fns, testa datumoperationer och experimentera med olika formateringsalternativ.
Exempel
Formatera aktuellt datum:
const now = new Date();
console.log(dateFns.format(now, "MMMM do, yyyy"));
// Utdata: December 30th, 2025Beräkna dagar mellan två datum:
const start = new Date(2025, 0, 1);
const end = new Date(2025, 11, 31);
console.log(dateFns.differenceInDays(end, start) + " days");
// Utdata: 364 daysLägg till tid på ett datum:
const today = new Date();
const nextWeek = dateFns.addWeeks(today, 1);
const nextMonth = dateFns.addMonths(today, 1);
console.log("Nästa vecka:", dateFns.format(nextWeek, "yyyy-MM-dd"));
console.log("Nästa månad:", dateFns.format(nextMonth, "yyyy-MM-dd"));Kontrollera om ett datum ligger i det förflutna eller framtiden:
const date = new Date(2024, 5, 15);
console.log("Är förflutet?", dateFns.isPast(date));
console.log("Är framtida?", dateFns.isFuture(date));Parsning av en datumsträng:
const parsed = dateFns.parse("25/12/2025", "dd/MM/yyyy", new Date());
console.log(dateFns.format(parsed, "EEEE, MMMM do, yyyy"));
// Utdata: Thursday, December 25th, 2025Funktioner
- Fullt date-fns‑bibliotek: Åtkomst till alla 200+ date-fns‑funktioner via
dateFns‑objektet - Live‑kodexekvering: Koden körs automatiskt när du skriver med smart debouncing
- Inbyggd terminal: Visa konsolutdata omedelbart utan att öppna webbläsarens utvecklingsverktyg
- Syntax‑highlighting: JavaScript‑syntaxhighlighting för bättre kodläsbarhet
- Felfångst: Runtime‑fel visas tydligt i terminalens output
Användningsområden
- Lära sig date-fns: Experimentera med olika funktioner och se resultat direkt utan projektuppsättning
- Testa datumformat: Prova olika formatsträngar för att hitta exakt den output‑mall du behöver
- Prototypa datumberäkningar: Testa komplex datumaritmetik som att lägga till arbetsdagar, hitta intervaller eller jämföra datum
- Felsöka datumlogik: Isolera och testa datumrelaterade kodsnuttar från dina projekt
- Snabba datumkonverteringar: Konvertera mellan datumformat eller beräkna tidsdiff på språng
Vanliga date-fns‑funktioner
| Funktion | Beskrivning | Exempel |
|---|---|---|
format |
Formatera ett datum till en sträng | dateFns.format(date, "yyyy-MM-dd") |
parse |
Parsar en sträng till ett datum | dateFns.parse("2025-01-01", "yyyy-MM-dd", new Date()) |
addDays |
Lägg till dagar på ett datum | dateFns.addDays(date, 7) |
subMonths |
Subtrahera månader från ett datum | dateFns.subMonths(date, 3) |
differenceInDays |
Antal dagar mellan datum | dateFns.differenceInDays(dateA, dateB) |
isAfter |
Kontrollera om datum är efter ett annat | dateFns.isAfter(dateA, dateB) |
isBefore |
Kontrollera om datum är före ett annat | dateFns.isBefore(dateA, dateB) |
startOfMonth |
Första dagen i månaden | dateFns.startOfMonth(date) |
endOfYear |
Sista ögonblicket på året | dateFns.endOfYear(date) |
formatDistance |
Läsbar tidsdiff | dateFns.formatDistance(dateA, dateB) |
Referens för format‑token
| Token | Beskrivning | Exempel |
|---|---|---|
yyyy |
4‑siffrigt år | 2025 |
MM |
2‑siffrig månad | 01‑12 |
MMMM |
Fullständigt månadsnamn | January |
dd |
2‑siffrig dag | 01‑31 |
do |
Dag med ordinal | 1st, 2nd, 3rd |
EEEE |
Fullständigt veckodagsnamn | Monday |
EEE |
Kort veckodag | Mon |
HH |
24‑timmars timme | 00‑23 |
hh |
12‑timmars timme | 01‑12 |
mm |
Minuter | 00‑59 |
ss |
Sekunder | 00‑59 |
a |
AM/PM | AM, PM |