Om funksjonen
Formål
Formaterer en prosentvis endring/trend med eksplisitt fortegn (+/-) via Intl.NumberFormat sin signDisplay: "exceptZero" - fortegnet genereres av plattformen selv i stedet for en håndbygd streng-sammensetting ((value >= 0 ? "+" : "") + value + "%"), noe som også gir riktig lokalisert minustegn/plassering.
Egner seg for
- Trendtall ved siden av et nøkkeltall (
<lm-stat>) eller en tabellrad, f.eks. "denne måneden: 4 200 kr (+12 %)". - Enhver kontekst der fortegnet i seg selv er meningsbærende (opp/ned), ikke bare størrelsen.
Egner seg ikke for
- Andelstall som ikke er en endring (f.eks. "32 % av budsjettet brukt") - bruk vanlig
Intl.NumberFormat({style: "percent"})direkte, siden et eksplisitt+-fortegn der ville vært misvisende. - Absolutte tall/beløp - bruk
formatTall/formatCurrency.
Signatur(er)
formatProsentendring(value: number | string, locale?: string) => string
| Parameter | Type | Beskrivelse |
|---|---|---|
value | number | string | Endringen i prosentpoeng, f.eks. 4.2 for en økning på 4,2 %. Negative verdier gir minustegn. |
locale (valgfri) | string | Locale for Intl.NumberFormat. Standard "nb-NO". |
Returnerer: Formatert endring med eksplisitt fortegn, f.eks. "+4,2 %" eller "−1,8 %" (Intl bruker det typografiske minustegnet U+2212, ikke bindestrek). 0 gir "0 %" uten fortegn. Returnerer "" for tom/manglende/ikke-numerisk verdi.
import {formatProsentendring} from "/designsystem/funksjoner/formattering/format-prosentendring/format-prosentendring.js";
formatProsentendring(4.2); // "+4,2 %"
formatProsentendring(-1.8); // "−1,8 %"
formatProsentendring(0); // "0 %"
Prøv selv
Rediger uttrykket under - returverdien oppdateres live.
Tilgjengelighet
Ikke relevant: ren logikk uten DOM eller UI. Bruk gjerne fargekoding (opp/ned) som et supplement til teksten, aldri en erstatning - selve fortegnstegnet (+/-) i returverdien bærer allerede betydningen for skjermlesere.
Referanser
Se også:
../format-tall/index.html - Beslektet tallformatering for selve størrelsen i stedet for endringen.../../../komponenter/innhold/stat/index.html - Naturlig sted å vise resultatet - et nøkkeltall med en formatert prosentendring som undertekst.
Avhengigheter: Ingen