Heim > Artikel > Web-Frontend > Wie konvertiert man Zahlen in JavaScript in Lakhs und Crores?
Zahlen in Lakhs/Crores umrechnen
Als Entwickler steht man oft vor der Aufgabe, Zahlen in Wörter umzuwandeln. Auch wenn bestehende Codeoptionen langwierig erscheinen mögen, zielt dieser Artikel darauf ab, einen prägnanteren Ansatz vorzustellen.
Vorhandene Methode
Der angegebene Code verwendet reguläre Ausdrücke und Schleifen für die Wortkonvertierung:
<code class="javascript">var th = ['','thousand','million', 'billion','trillion']; var dg = ['zero','one','two','three','four', 'five','six','seven','eight','nine']; var tn = ['ten','eleven','twelve','thirteen', 'fourteen','fifteen','sixteen', 'seventeen','eighteen','nineteen']; var tw = ['twenty','thirty','forty','fifty', 'sixty','seventy','eighty','ninety']; function toWords(s) { ... }</code>
Südasiatisches Nummerierungssystem
Allerdings Code konvertiert Zahlen mithilfe des westlichen Zahlensystems (Millionen/Milliarden). Um es an das südasiatische System (Lakhs/Crores) anzupassen, sind Änderungen erforderlich.
Prägnanter Code
Der folgende Code bietet eine optimierte Lösung:
<code class="javascript">var a = ['','one ','two ','three ','four ', 'five ','six ','seven ','eight ','nine ','ten ','eleven ','twelve ','thirteen ','fourteen ','fifteen ','sixteen ','seventeen ','eighteen ','nineteen ']; var b = ['', '', 'twenty','thirty','forty','fifty', 'sixty','seventy','eighty','ninety']; function inWords (num) { if ((num = num.toString()).length > 9) return 'overflow'; n = ('000000000' + num).substr(-9).match(/^(\d{2})(\d{2})(\d{2})(\d{1})(\d{2})$/); if (!n) return; var str = ''; str += (n[1] != 0) ? (a[Number(n[1])] || b[n[1][0]] + ' ' + a[n[1][1]]) + 'crore ' : ''; str += (n[2] != 0) ? (a[Number(n[2])] || b[n[2][0]] + ' ' + a[n[2][1]]) + 'lakh ' : ''; str += (n[3] != 0) ? (a[Number(n[3])] || b[n[3][0]] + ' ' + a[n[3][1]]) + 'thousand ' : ''; str += (n[4] != 0) ? (a[Number(n[4])] || b[n[4][0]] + ' ' + a[n[4][1]]) + 'hundred ' : ''; str += (n[5] != 0) ? ((str != '') ? 'and ' : '') + (a[Number(n[5])] || b[n[5][0]] + ' ' + a[n[5][1]]) + 'only ' : ''; return str; }</code>
Dieser überarbeitete Code wandelt Zahlen in Wörter im südasiatischen Zahlensystem um und berücksichtigt dabei Lakhs und Crores.
Das obige ist der detaillierte Inhalt vonWie konvertiert man Zahlen in JavaScript in Lakhs und Crores?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!