So konvertieren Sie Zahlen in Wörter mit JavaScript

Bei vielen Programmierungen wird mit Zahlen gerechnet, und Sie können Zahlen zur Anzeige einfach formatieren, indem Sie Kommas, Dezimalstellen, negative Vorzeichen und andere geeignete Zeichen hinzufügen, je nachdem, um welche Art von Zahl es sich handelt.

Sie präsentieren Ihre Ergebnisse jedoch nicht immer als Teil einer mathematischen Gleichung. Im Web für den allgemeinen Benutzer geht es mehr um Wörter als um Zahlen. Daher ist eine als Zahl angezeigte Zahl manchmal nicht angemessen.

In diesem Fall benötigen Sie das Äquivalent der Zahl in Worten, nicht in Ziffern. Hier können Sie auf Schwierigkeiten stoßen. Wie konvertieren Sie die numerischen Ergebnisse Ihrer Berechnungen, wenn die Zahl in Worten angezeigt werden soll??

Das Umwandeln einer Zahl in Wörter ist nicht gerade die einfachste Aufgabe, kann jedoch mit JavaScript durchgeführt werden, das nicht zu komplex ist.

JavaScript, um Zahlen in Wörter umzuwandeln

Wenn Sie diese Conversions auf Ihrer Website durchführen möchten, benötigen Sie einen JavaScript-Code, der die Conversion für Sie durchführen kann. Am einfachsten ist es, den folgenden Code zu verwenden. Wählen Sie einfach den Code aus und kopieren Sie ihn in eine Datei mit dem Namen toword.js.

// Wandle Zahlen in Wörter um
// Copyright 25. Juli 2006, von Stephen Chapman http://javascript.about.com
// Die Erlaubnis, dieses Javascript auf Ihrer Webseite zu verwenden, wird erteilt
// vorausgesetzt, der gesamte Code (einschließlich dieses Urheberrechtsvermerks) ist
// genau wie gezeigt verwendet (Sie können das Nummerierungssystem ändern, wenn Sie möchten)

// Amerikanisches Nummerierungssystem
var th = [", 'tausend', 'millionen', 'milliarden', 'billionen'];
// Kommentiere diese Zeile für English Number System aus
// var th = [", 'tausend', 'millionen', 'milliarden', 'milliarden'];

var dg = ['null', 'eins', 'zwei', 'drei', 'vier',
'fünf', 'sechs', 'sieben', 'acht', 'neun']; var tn =
['zehn', 'elf', 'zwölf', 'dreizehn', 'vierzehn', 'fünfzehn', 'sechzehn'],
'siebzehn', 'achtzehn', 'neunzehn']; var tw = ['zwanzig', 'dreißig', 'vierzig', 'fünfzig',
'sechzig', 'siebzig', 'achtzig', 'neunzig']; Funktion toWords (s) s = s.toString (); s =
s.replace (/ [\,] / g, "); if (s! = parseFloat (s)) liefert 'keine Zahl'; var x =
s.indexOf ('.'); wenn (x == -1) x = an Länge; if (x> 15) return 'zu groß'; var n =
s.split ("); var str ="; var sk = 0; für (var i = 0; i < x; i++) if
((x-i)% 3 == 2) if (n [i] == '1') str + = tn [Zahl (n [i + 1])] + "; i ++; sk = 1;
sonst wenn (n [i]! = 0) str + = tw [n [i] -2] + "; sk = 1; sonst wenn (n [i]! = 0) str + =
dg [n [i]] + "; if ((x-i)% 3 == 0) str + = 'hundert'; sk = 1; if ((x-i)% 3 == 1) if (sk)
str + = th [(x-i-1) / 3] + "; sk = 0; if (x! = Länge) var y = Länge; str + =
'point'; für (var i = x + 1; istr.replace (/ \ s + / g, ");

Verknüpfen Sie als Nächstes das Skript mit dem folgenden Code in den Kopf Ihrer Seite:

var words = toWords (num);

Der letzte Schritt besteht darin, das Skript aufzurufen, um die Konvertierung in Wörter für Sie durchzuführen. Um eine Zahl in Wörter umzuwandeln, müssen Sie nur die Funktion aufrufen, die die Zahl übergibt, die Sie umwandeln möchten, und die entsprechenden Wörter werden zurückgegeben.

Einschränkungen von Zahlen zu Wörtern

Beachten Sie, dass diese Funktion Zahlen mit einer Größe von 999.999.999.999.999 in Wörter und mit so vielen Dezimalstellen konvertieren kann, wie Sie möchten. Wenn Sie versuchen, eine größere Zahl zu konvertieren, wird "zu groß" zurückgegeben.

Zahlen, Kommas, Leerzeichen und ein einzelner Punkt für den Dezimalpunkt sind die einzigen zulässigen Zeichen, die für die zu konvertierende Zahl verwendet werden können. Wenn etwas anderes als diese Zeichen enthalten ist, wird "keine Zahl" zurückgegeben.

Negative Zahlen

Wenn Sie negative Zahlen von Währungswerten in Wörter konvertieren möchten, sollten Sie diese Symbole zuerst von der Zahl entfernen und diese getrennt in Wörter konvertieren.