Hopp til hovedinnhold
Meny

lmfaole.party / designsystem / funksjoner / Datoformatering

  • Forside
  • Turer
  • Økonomi
  • Slides
  • formatDate – Datoformatering / Date formatting

    Om funksjonen

    Formål

    Formatterer dato og klokkeslett med Intl.DateTimeFormat og støtter eksplisitt timeZone når visningen skal følge en bestemt tidssone.

    Egner seg for

    • Brukervendt visning av datoer, klokkeslett og dagsoverskrifter som skal følge brukerens locale eller en valgt tidssone.

    Egner seg ikke for

    • Ikke for maskinlesbare formater, sorteringsnøkler eller streng inputvalidering. formatDate og formatDateTime sender verdien rett til new Date(...), mens formatDayHeading krever eksakt YYYY-MM-DD.

    Signatur(er)

    formatDate(dateStr: string, locale?: string) => string

    Parameter Type Beskrivelse
    dateStrstringDato/tidsverdi som sendes rett til new Date(...).
    locale (valgfri)stringOverstyrer hvilket locale Intl.DateTimeFormat skal bruke.

    Returnerer: Kort dato (f.eks. "1. jan. 2026"). Returnerer "" for tom/manglende input.

    import {formatDate, formatDateTime, formatDayHeading} from "/designsystem/funksjoner/formattering/format-date/format-date.js";
    
    formatDate("2026-01-01");                               // "1. jan. 2026"
    formatDateTime("2026-01-01T10:00:00Z", "Europe/Oslo"); // "1. jan. 2026, 11:00"
    formatDayHeading("2026-01-01");                         // "torsdag 1. januar 2026"

    formatDateTime(dateStr: string, timeZone?: string, locale?: string) => string

    Parameter Type Beskrivelse
    dateStrstringDato/tidsverdi som sendes rett til new Date(...).
    timeZone (valgfri)stringIANA-tidssonen klokkeslettet skal vises i.
    locale (valgfri)stringOverstyrer hvilket locale Intl.DateTimeFormat skal bruke.

    Returnerer: Dato og klokkeslett i angitt tidssone. Returnerer "" for tom/manglende input.


    formatTime(dateStr: string, timeZone?: string, locale?: string) => string

    Parameter Type Beskrivelse
    dateStrstringDato/tidsverdi som sendes rett til new Date(...).
    timeZone (valgfri)stringIANA-tidssonen klokkeslettet skal vises i.
    locale (valgfri)stringOverstyrer hvilket locale Intl.DateTimeFormat skal bruke.

    Returnerer: Klokkeslett (f.eks. "14:20"). Returnerer "" for tom/manglende input.


    formatDayHeading(dayKey: string, locale?: string) => string

    Parameter Type Beskrivelse
    dayKeystringRen YYYY-MM-DD-dagsnøkkel; funksjonen legger til T00:00:00 før parsing slik at datoen tolkes i lokal tid, ikke UTC.
    locale (valgfri)stringOverstyrer hvilket locale Intl.DateTimeFormat skal bruke.

    Returnerer: Full ukedag og dato til bruk som overskrift for en dag-gruppe (f.eks. "torsdag 1. januar 2026"). Returnerer "Ikke datert" hvis input ikke matcher eksakt YYYY-MM-DD.

    Prøv selv

    Rediger uttrykket under - returverdien oppdateres live.

    Tilgjengelighet

    Ikke relevant: ren logikk uten DOM eller UI.

    Referanser

    Se også:

    Brukes av:

    • turer/js/features/receipts/receipts.js
    • turer/js/features/timeline/timeline.js
    • turer/js/features/header/header.js
    • turer/js/features/status/status.js
    • turer/js/pages/dashboard.js

    Avhengigheter: Ingen