date-fns lekeplass
Test og eksperimenter med date-fns-bibliotekets funksjoner i en live JavaScript-lekeplass med umiddelbar utdata
Inndata
Utdata
Les meg
Hva er date-fns?
date-fns er et moderne JavaScript‑datoutilbibliotek som gir omfattende, konsistente og pålitelige verktøy for å arbeide med datoer i JavaScript. I motsetning til det innebygde JavaScript‑Date‑objektet, som har mange særtrekk og inkonsistenser, tilbyr date-fns en modulær, funksjonell tilnærming til datomanipulering. Biblioteket er tree‑shakeable, noe som betyr at du kun inkluderer funksjonene du faktisk bruker, og holder pakkestørrelsen minimal. Biblioteket støtter over 200 funksjoner som dekker alt fra formatering og parsing til sammenligning, manipulering og lokalisering av datoer.
Hvorfor bruke en date-fns‑lekplat?
Å jobbe med datoer i JavaScript kan være utfordrende – tidssoner, formateringsmønstre og dateregning fører ofte til uventede resultater. Et lekplat-miljø lar deg eksperimentere med date-fns‑funksjoner i sanntid, se umiddelbare resultater og lære API‑et uten å sette opp et fullt prosjekt. Det er perfekt for å teste formateringsstrenger, feilsøke dateregninger eller raskt prototype datologikk før du integrerer den i applikasjonen din.
Verktøysbeskrivelse
date-fns Playground er et interaktivt kode‑miljø som lar deg skrive og kjøre JavaScript‑kode med hele date-fns‑biblioteket forhåndslastet. Hele date-fns‑biblioteket er tilgjengelig via dateFns‑objektet, som gir deg tilgang til alle 200+ funksjoner. Koden kjøres automatisk mens du skriver (med debouncing), og alle console.log, console.warn og console.error‑utdata vises i den innebygde terminalen under editoren. Dette gjør det ideelt for å lære date-fns, teste dato‑operasjoner og eksperimentere med ulike formateringsalternativer.
Eksempler
Formater dagens dato:
const now = new Date();
console.log(dateFns.format(now, "MMMM do, yyyy"));
// Utdata: 30. desember 2025Beregn antall dager mellom to datoer:
const start = new Date(2025, 0, 1);
const end = new Date(2025, 11, 31);
console.log(dateFns.differenceInDays(end, start) + " days");
// Utdata: 364 dagerLegg til tid på en dato:
const today = new Date();
const nextWeek = dateFns.addWeeks(today, 1);
const nextMonth = dateFns.addMonths(today, 1);
console.log("Neste uke:", dateFns.format(nextWeek, "yyyy-MM-dd"));
console.log("Neste måned:", dateFns.format(nextMonth, "yyyy-MM-dd"));Sjekk om en dato er i fortiden eller fremtiden:
const date = new Date(2024, 5, 15);
console.log("Er fortid?", dateFns.isPast(date));
console.log("Er fremtid?", dateFns.isFuture(date));Parse en datostreng:
const parsed = dateFns.parse("25/12/2025", "dd/MM/yyyy", new Date());
console.log(dateFns.format(parsed, "EEEE, MMMM do, yyyy"));
// Utdata: torsdag, 25. desember 2025Funksjoner
- Fullt date-fns‑bibliotek: Tilgang til alle 200+ date-fns‑funksjoner via
dateFns‑objektet - Live kodeutførelse: Koden kjøres automatisk mens du skriver med smart debouncing
- Innebygd terminal: Vis konsollutdata umiddelbart uten nettleser‑dev‑verktøy
- Syntaksutheving: JavaScript‑syntaksutheving for bedre kodelesbarhet
- Feilhåndtering: Kjøretidsfeil vises tydelig i terminalutdataene
Bruksområder
- Lære date-fns: Eksperimenter med ulike funksjoner og se resultater umiddelbart uten prosjektoppsett
- Teste datoformatering: Prøv forskjellige formatstrenger for å finne nøyaktig ønsket utdata‑mønster
- Prototype dateregning: Test kompleks dateregning som å legge til arbeidsdager, finne intervaller eller sammenligne datoer
- Feilsøke datologikk: Isoler og test dato‑relatert kode fra prosjektene dine
- Raske datakonverteringer: Konverter mellom datoformater eller beregn tidsforskjeller på stående fot
Vanlige date-fns‑funksjoner
| Funksjon | Beskrivelse | Eksempel |
|---|---|---|
format |
Formater en dato til en streng | dateFns.format(date, "yyyy-MM-dd") |
parse |
Parse en streng til en dato | dateFns.parse("2025-01-01", "yyyy-MM-dd", new Date()) |
addDays |
Legg til dager på en dato | dateFns.addDays(date, 7) |
subMonths |
Trekk fra måneder fra en dato | dateFns.subMonths(date, 3) |
differenceInDays |
Hent antall dager mellom datoer | dateFns.differenceInDays(dateA, dateB) |
isAfter |
Sjekk om en dato er etter en annen | dateFns.isAfter(dateA, dateB) |
isBefore |
Sjekk om en dato er før en annen | dateFns.isBefore(dateA, dateB) |
startOfMonth |
Hent første dag i måneden | dateFns.startOfMonth(date) |
endOfYear |
Hent siste øyeblikk i året | dateFns.endOfYear(date) |
formatDistance |
Menneskelig lesbar tidsforskjell | dateFns.formatDistance(dateA, dateB) |
Referanse for format‑tokens
| Token | Beskrivelse | Eksempel |
|---|---|---|
yyyy |
4‑sifret år | 2025 |
MM |
2‑sifret måned | 01‑12 |
MMMM |
Fullt månedsnavn | januar |
dd |
2‑sifret dag | 01‑31 |
do |
Dag med ordinal | 1., 2., 3. |
EEEE |
Fullt ukedagsnavn | mandag |
EEE |
Kort ukedag | man |
HH |
24‑timmers time | 00‑23 |
hh |
12‑timmers time | 01‑12 |
mm |
Minutter | 00‑59 |
ss |
Sekunder | 00‑59 |
a |
AM/PM | AM, PM |