Skip to content
Converts a number to words
JavaScript HTML
Branch: master
Clone or download
Latest commit 2b810ab Aug 9, 2018

README.md

NPM

Number To Words

Contains some util methods for converting numbers into words, ordinal words and ordinal numbers.

Install

npm install number-to-words

API

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 Bugs

Contributions, comments and/or bug reports are much appreciated. Open a pull request or add comments on the issues page. Thanks!

Upcoming v2.0

See roadmap for details.

Change Log

Version 1.2.4 (final 1.x release)
  • Bug fix in 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.
Version 1.2.3
  • Bug fix in isFinite for Phantom and IE (#10). Thanks to @jeremiahrhall.
Version 1.2.2
  • Bug fix in toOrdinal. Input 11, 12, and 13 now yields the correct suffix (#8). Thanks to @pilyugin.
Version 1.2.1
  • Bower package
Version 1.2.0
  • Bundles are now available for browsers (./numberToWords.js and ./numberToWords.min.js). They export a global numberToWords variable.
  • Made unit tests runnable in browser. To run the unit tests in the browser, start a local server and visit localhost/spec with a browser.
  • toOrdinal, toWords and toWordsOrdinal now also allow string values as input (replaced Math.floor with parseInt).
1.1.0
  • New methods toOrdinal and toWordsOrdinal
  • Deprecated toWords second optional asOrdinal parameter, use toWordsOrdinal()-method instead
  • toWords now converts any decimal input to an integer (with Math.floor)
  • Bug fixed returning “zeroth” instead of “zero” when converting a number word into its ordinal
1.0.1
  • Minor package tweaks
1.0.0
  • Initial release
You can’t perform that action at this time.