Numeroiden muuntaminen sanoiksi JavaScriptin avulla

Paljon ohjelmointi sisältää laskelmat numeroilla, ja voit muotoilla numerot helposti näytölle lisäämällä pilkuja, desimaalit, negatiiviset merkit ja muut asianmukaiset merkit numeron tyypistä riippuen.

Mutta et aina esitä tuloksiasi osana matemaattista yhtälöä. Tavallisen käyttäjän verkko on enemmän sanoista kuin numeroista, joten toisinaan numerona näytetty numero ei ole sopiva.

Tässä tapauksessa tarvitset numeron ekvivalentin sanoilla, ei numeroilla. Tässä voit joutua vaikeuksiin. Kuinka muuntaa laskelmien numeeriset tulokset, kun tarvitset numeroa, joka näkyy sanoina?

Jos haluat pystyä tekemään nämä muunnokset sivustossasi, tarvitset JavaScript-koodin, joka voi tehdä muuntamisen puolestasi. Yksinkertaisin tapa tehdä tämä on käyttää koodi alla; valitse vain koodi ja kopioi se tiedostoon, jota kutsutaan toword.js.

// Muunna numerot sanoiksi
// tekijänoikeudet 25. heinäkuuta 2006, kirjoittanut Stephen Chapman http://javascript.about.com
// lupa käyttää tätä Javascriptiä verkkosivustollasi myönnetään

instagram viewer

// edellyttäen, että kaikki koodi (mukaan lukien tämä tekijänoikeusilmoitus) on
// käytetty täsmälleen kuvan osoittamalla tavalla (voit muuttaa numerointijärjestelmää haluttaessa)

// Amerikkalainen numerointijärjestelmä
var th = ['', 'tuhat', 'miljoona', 'miljardia', 'biljoonaa'];
// poista tämä rivi englanninkielisestä numerojärjestelmästä
// var th = ['', 'tuhat', 'miljoona', 'miljardia', 'miljardia'];

var dg = ['nolla', 'yksi', 'kaksi', 'kolme', 'neljä',
'Viisi', 'kuusi', 'seitsemän', 'kahdeksan', 'yhdeksän']; var tn =
['kymmenen', 'yksitoista', 'kaksitoista', 'kolmetoista', 'neljätoista', 'viisitoista', 'kuusitoista',
'Seitsemäntoista', 'kahdeksantoista', 'yhdeksäntoista']; var tw = ['kaksikymmentä', 'kolmekymmentä', 'neljäkymmentä', 'viisikymmentä',
'Kuusikymmentä', 'seitsemänkymmentä', 'kahdeksankymmentä', 'yhdeksänkymmentä']; toimintoWords (s) {s = s.toString (); s =
s.korvaa (/ [\,] / g, ''); if (s! = parseFloat (s)) palauttaa 'ei numeroa'; var x =
s.indexOf ( ''); if (x == -1) x = s.pituus; if (x> 15) palauttaa 'liian iso'; var n =
s.split ( ''); var str = ''; var sk = 0; for (var i = 0; i ((x-i)% 3 == 2) {jos (n [i] == '1') {str + = tn [numero (n [i + 1])] + ''; i ++; sk = 1;}
muuten jos (n [i]! = 0) {str + = tw [n [i] -2] + ''; sk = 1;}} muuten jos (n [i]! = 0) {str + =
dg [n [i]] + ''; if ((x-i)% 3 == 0) str + = 'sata'; sk = 1;} if ((x-i)% 3 == 1) {if (sk)
str + = th [(x-i-1) / 3] + ''; sk = 0;}}, jos (x! = s.pituus) {var y = s.pituus; str + =
'kohta'; for (var i = x + 1; istr.replace (/ \ s + / g, '');}

Viimeinen vaihe on kutsua komentosarja suorittamaan muuntaminen sanoiksi puolestasi. Jotta numero muutetaan sanoiksi, sinun täytyy vain soittaa sitä ohjaavalle toiminnolle numero, jonka haluat muuntaa, ja vastaavat sanat palautetaan.

Huomaa, että tämä toiminto voi muuntaa yhtä suuret numerot kuin 999,999,999,999,999 sanoiksi ja niin monta desimaalia kuin haluat. Jos yrität muuntaa a määrä suurempi kuin se, se palaa "liian suureksi".

Numerot, pilkut, välilyönnit ja yksi jakso desimaalin tarkkuudella ovat ainoat hyväksyttävät merkit, joita voidaan käyttää muunnettavaan numeroon. Jos se sisältää jotain näiden merkkien ulkopuolella, se antaa "ei numeroa".

instagram story viewer