Konvertering av tall til ord ved hjelp av JavaScript

Masse av programmering innebærer beregninger med tall, og du kan enkelt formatere tall for visning ved å legge til komma, desimaler, negative tegn og andre passende tegn, avhengig av typen tall det er.

Men du presenterer ikke alltid resultatene dine som en del av en matematisk ligning. Internett for den generelle brukeren handler mer om ord enn det handler om tall, så noen ganger er et tall som vises som et nummer ikke passende.

I dette tilfellet trenger du ekvivalent med tallet i ord, ikke i tall. Det er her du kan støte på vanskeligheter. Hvordan konverterer du de numeriske resultatene fra beregningene dine når du trenger tallet som vises i ord?

Hvis du vil kunne gjøre disse konverteringene på nettstedet ditt, trenger du en JavaScript-kode som kan gjøre konverteringen for deg. Den enkleste måten å gjøre dette på er å bruke kode under; Bare velg koden og kopier den til en fil som heter toword.js.

// Konverter tall til ord
// copyright 25. juli 2006, av Stephen Chapman http://javascript.about.com

instagram viewer

// tillatelse til å bruke dette Javascript på din webside er gitt
// forutsatt at all koden (inkludert denne copyright-varsel) er
// brukt nøyaktig som vist (du kan endre nummereringssystemet hvis du vil)

// Amerikansk nummereringssystem
var th = ['', 'tusen', 'million', 'billion', 'billion'];
// uncomment this line for English Number System
// var th = ['', 'tusen', 'millioner', 'milliard', 'milliarder'];

var dg = ['null', 'en', 'to', 'tre', 'fire',
'Fem', 'seks', 'sju', 'åtte', 'ni']; var tn =
['ti', 'elleve', 'tolv', 'tretten', 'fjorten', 'femten', 'seksten',
'Sytten', 'atten', 'nitten']; var tw = ['tjue', 'tretti', 'førti', 'femti',
'Seksti', 'sytti', 'åtti', 'nitti']; funksjon tilorden (e) {s = s.toString (); s =
s.replace (/ [\,] / g, ''); hvis (s! = parseFloat (s)) returnerer 'ikke et tall'; var x =
s.indexOf ( ''); if (x == -1) x = s.length; hvis (x> 15) returnerer 'for stor'; var n =
s.split ( ''); var str = ''; var sk = 0; for (var i = 0; i ((x-i)% 3 == 2) {if (n [i] == '1') {str + = tn [Number (n [i + 1])] + ''; Jeg ++; sk = 1;}
ellers hvis (n [i]! = 0) {str + = tw [n [i] -2] + ''; sk = 1;}} annet hvis (n [i]! = 0) {str + =
dg [n [i]] + ''; if ((x-i)% 3 == 0) str + = 'hundre'; sk = 1;} if ((x-i)% 3 == 1) {if (sk)
str + = th [(x-i-1) / 3] + ''; sk = 0;}} if (x! = s.length) {var y = s.length; str + =
'poeng'; for (var i = x + 1; istr.replace (/ \ s + / g, '');}

Det siste trinnet er å ringe skriptet for å utføre konverteringen til ord for deg. For å få et tall som er konvertert til ord, trenger du bare å ringe funksjonen som gir det nummeret du vil konvertere, og de tilsvarende ordene vil bli returnert.

Merk at denne funksjonen kan konvertere tall så store som 999.999.999.999.999 til ord og med så mange desimaler du vil. Hvis du prøver å konvertere en Nummer større enn at den vil returnere "for stor."

Tall, komma, mellomrom og en enkelt periode for desimaltegnet er de eneste akseptable tegnene som kan brukes til tallet som konverteres. Hvis det inneholder noe utover disse tegnene, vil det returnere "ikke et tall."

instagram story viewer