# number-to-words

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

Latest version **1.2.4** (published 2018-08-09) · MIT license · 0 weekly downloads

## Install

```sh
npm install number-to-words
pnpm add number-to-words
yarn add number-to-words
bun add number-to-words
```

## Health

**Score 23/100 (F)** — status: abandoned.

Positive: has types package; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.2.4 |
| Published | 2018-08-09 |
| First published | 2015-02-11 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | separate (@types/number-to-words) |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 45.2 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 226 |
| Author | Martin Eneqvist |
| Maintainers | marlun78 |
| Keywords | converter, number, ordinal, string, tool, word |

## Links

- npm: https://www.npmjs.com/package/number-to-words
- Repository: https://github.com/marlun78/number-to-words
- Issues: https://github.com/marlun78/number-to-words/issues
- npm.io page: https://npm.io/package/number-to-words

## Alternatives

- [random-seedable](https://npm.io/package/random-seedable.md) — 27.9K weekly downloads
- [n2words](https://npm.io/package/n2words.md) — 22.2K weekly downloads
- [@stdlib/math-base-special-factorialln](https://npm.io/package/@stdlib/math-base-special-factorialln.md) — 5.7K weekly downloads
- [@stdlib/math-base-special-abs2](https://npm.io/package/@stdlib/math-base-special-abs2.md) — 1.7K weekly downloads
- [commons-math-interpolation](https://npm.io/package/commons-math-interpolation.md) — 1.4K weekly downloads

## Recent versions

- 1.2.4 (latest) — 2018-08-09
- 1.2.3 — 2016-06-25
- 1.2.2 — 2016-02-13
- 1.2.1 — 2015-09-05
- 1.2.0 — 2015-09-05
- 1.1.0 — 2015-03-05
- 1.0.1 — 2015-02-11
- 1.0.0 — 2015-02-11

## README

[![NPM](https://nodei.co/npm/number-to-words.png)](https://www.npmjs.com/package/number-to-words)


# 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.
```js
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.
```js
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.
```js
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](https://github.com/marlun78/number-to-words/issues). Thanks!


### Upcoming v2.0
See [roadmap](ROADMAP.md) 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](https://github.com/marlun78/number-to-words/issues/15)). Thanks to @dmrzn.
- `toOrdinal` and `toWords` now throws a more precise error when passed an unsafe number ([#13](https://github.com/marlun78/number-to-words/pull/13)). Thanks to @adrianomelo.

##### Version 1.2.3
- Bug fix in `isFinite` for Phantom and IE ([#10](https://github.com/marlun78/number-to-words/pull/10)). Thanks to @jeremiahrhall.

##### Version 1.2.2
- Bug fix in `toOrdinal`. Input 11, 12, and 13 now yields the correct suffix ([#8](https://github.com/marlun78/number-to-words/pull/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

---
_Source: https://npm.io/package/number-to-words · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
