Contains some util methods for converting numbers into words, ordinal words and ordinal numbers.
npm install number-to-words
toOrdinal(number)
Converts an integer into a string with an ordinal postfix. If number is decimal, the decimals will be removed.
var converter = require('number-to-words');
converter.toOrdinal(21); // => “21st”
toWords(number)
Converts an integer into words. If number is decimal, the decimals will be removed.
var converter = require('number-to-words');
converter.toWords(13); // => “thirteen”
// Decimal numbers:
converter.toWords(2.9); // => “two”
// Negative numbers:
converter.toWords(-3); // => “minus three”
// Large numbers:
converter.toWords(9007199254740992); // => “nine quadrillion, seven trillion, one hundred ninety-nine billion, two hundred fifty-four million, seven hundred forty thousand, nine hundred ninety-two”
toWordsOrdinal(number)
Converts a number into ordinal words. If number is decimal, the decimals will be removed.
var converter = require('number-to-words');
converter.toWordsOrdinal(21); // => “twenty-first”
Contributions, comments and/or bug reports are much appreciated. Open a pull request or add comments on the issues page. Thanks!
See roadmap for details.
toOrdinal
. When passed -11, -12 and -13 it returned an incorrect suffix (#15). Thanks to @dmrzn.toOrdinal
and toWords
now throws a more precise error when passed an unsafe number (#13). Thanks to @adrianomelo.isFinite
for Phantom and IE (#10). Thanks to @jeremiahrhall.toOrdinal
. Input 11, 12, and 13 now yields the correct suffix (#8). Thanks to @pilyugin../numberToWords.js
and ./numberToWords.min.js
). They export a global numberToWords
variable.toOrdinal
, toWords
and toWordsOrdinal
now also allow string values as input (replaced Math.floor
with parseInt
).toOrdinal
and toWordsOrdinal
toWords
second optional asOrdinal
parameter, use toWordsOrdinal()
-method insteadtoWords
now converts any decimal input to an integer (with Math.floor
)