Conversia numerelor în cuvinte folosind JavaScript

click fraud protection

Multe programare implică calcule cu numere și puteți să formatați cu ușurință numerele pentru afișare adăugând virgule, zecimale, semne negative și alte caractere adecvate, în funcție de tipul de număr.

Dar nu întotdeauna vă prezentați rezultatele ca parte a unei ecuații matematice. Web-ul pentru utilizator general este mai mult despre cuvinte decât despre numere, așa că uneori un număr afișat ca număr nu este potrivit.

În acest caz, aveți nevoie de echivalentul numărului în cuvinte, nu în cifre. Aici puteți întâmpina dificultăți. Cum convertiți rezultatele numerice ale calculelor dvs. atunci când aveți nevoie de numărul afișat în cuvinte?

Dacă doriți să puteți efectua aceste conversii pe site-ul dvs., veți avea nevoie de un cod JavaScript care să poată face conversia pentru dvs. Cel mai simplu mod de a face acest lucru este să utilizați cod de mai jos; doar selectați codul și copiați-l într-un fișier numit toword.js.

// Convertiți numerele în cuvinte
// copyright 25 iulie 2006, de Stephen Chapman http://javascript.about.com

instagram viewer

// se acordă permisiunea de a utiliza acest Javascript pe pagina web
// cu condiția ca întregul cod (inclusiv acest aviz de copyright) să fie
// folosit exact așa cum se arată (puteți schimba sistemul de numerotare dacă doriți)

// Sistem de numerotare american
var th = ['', 'mii', 'milioane', 'miliarde', 'trilioane'];
// dezacordează această linie pentru sistemul de numere în engleză
// var th = ['', 'mii', 'milioane', 'miliard', 'miliard'];

var dg = ['zero', 'unu', 'doi', 'trei', 'patru',
'Cinci', 'șase', 'șapte', 'opt', 'nouă']; var tn =
['zece', 'unsprezece', 'doisprezece', 'treisprezece', 'paisprezece', 'cincisprezece', 'șaisprezece',
'Șaptesprezece', 'optsprezece', 'nouăsprezece']; var tw = ['douăzeci', 'treizeci', 'patruzeci', 'cincizeci',
, 'Șaptezeci' 'șaizeci', 'optzeci', 'nouăzeci']; funcție la adresa (categoriilor) {{s = s.toString (); s =
s.replace (/ [\,] / g, ''); if (s! = parseFloat (s)) returnează „nu un număr”; var x =
s.indexOf ( ''); dacă (x == -1) x = s.lungime; if (x> 15) return "prea mare"; var n =
s.split ( ''); var str = ''; var sk = 0; for (var i = 0; i ((x-i)% 3 == 2) {if (n [i] == '1') {str + = tn [Număr (n [i + 1])] + ''; i ++; sk = 1;}
else if (n [i]! = 0) {str + = tw [n [i] -2] + ''; sk = 1;}} else if (n [i]! = 0) {str + =
dg [n [i]] + ''; if ((x-i)% 3 == 0) str + = 'sute'; 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 + =
„punct”; for (var i = x + 1; istr.replace (/ \ s + / g, '');}

Ultimul pas este să sunați scriptul pentru a efectua conversia în cuvinte pentru dvs. Pentru a obține un număr convertit în cuvinte, trebuie doar să apelați funcția care îi trece numărul la care doriți să convertiți și cuvintele corespunzătoare vor fi returnate.

Rețineți că această funcție poate converti numere cât mai mari de 999,999,999,999,999 în cuvinte și cu câte zecimale doriți. Dacă încercați să convertiți o număr mai mare decât asta se va întoarce „prea mare”.

Numerele, virgulele, spațiile și o singură perioadă pentru punctul zecimal sunt singurele caractere acceptabile care pot fi utilizate pentru numărul convertit. Dacă conține ceva dincolo de aceste caractere, se va întoarce „nu un număr”.

instagram story viewer