5

shortNumbers Funktion

Für alle die ein ähnliches Problem haben mit langen Zahlen hier eine kleine Funktion, die eine Lösung bietet:

function shortNumbers(value : number) do
    let data := {
            factors: [{
                    factor: 1000,
                    title: "Tsd."
                }, {
                    factor: 1000000,
                    title: "Mio."
                }, {
                    factor: 1000000000,
                    title: "Mrd."
                }, {
                    factor: 1000000000000,
                    title: "Bill."
                }]
        };
    let absValue := abs(value);
    if absValue < 1000 then
        text(value)
    else
        let uniqueZahl := for item in data.factors do
                if absValue >= item.factor then
                    let newValue := round(absValue / number(item.factor), 2);
                    let formattedValue := text(newValue) + " " + item.title;
                    if value < 0 then "-" + formattedValue else formattedValue end
                end
            end;
        text(last(uniqueZahl))
    end
end;

und dann einfach einsetzen: z.B.  

shortNumbers(20000000)

2 Antworten

null
    • T_Bartzsch
    • vor 9 Monaten
    • Gemeldet - anzeigen

    Das kann ich super bei meinen Privaten Kontobewegungen einsetzen ... nachdem ich das data-Array noch um "Trill." ergänzt habe :)))))

    Spaß beiseite, danke, tolle Funktion!

    • mirko3
    • vor 8 Monaten
    • Gemeldet - anzeigen

    Sehr cool. Danke. Mirko

Content aside

  • 5 „Gefällt mir“ Klicks
  • vor 8 MonatenZuletzt aktiv
  • 2Antworten
  • 90Ansichten
  • 3 Folge bereits