Skip to content

This tiny library (πŸͺΆ 1.4 KB) converts numbers to English words, supporting both general numeric values and monetary values with customizable currency and minor units.

License

Notifications You must be signed in to change notification settings

Qit-tools/number-to-words

Repository files navigation

Number to Words Converter

Test status

This tiny library (πŸͺΆ 1.4 KB) converts numbers to English words, supporting both general numeric values and monetary values with customizable currency and minor units.

πŸ‘€ DEMO

CDN

πŸ—οΈ Install

πŸŽ‰ NPM

npm i @qit.tools/number-to-words

🧁 Bun

bun add @qit.tools/number-to-words

🌟 PNPM

pnpm add @qit.tools/number-to-words

🧢 Yarn

yarn add @qit.tools/number-to-words

πŸŽ“ How to use

Importing the Function

import { numberToWords } from "@qit.tools/number-to-words";

Basic Usage

const words = numberToWords(123); 
console.log(words); // "one hundred twenty-three"

Handling Decimal Numbers

const words = numberToWords(123.45); 
console.log(words); // "one hundred twenty-three point four five"

Formatting as Currency

const options = {
  money: {
    currency: ["dollar", "dollars"],
    minor: ["cent", "cents"]
  }
};

const words = numberToWords(123.45, options); 
console.log(words); // "one hundred twenty-three dollars and forty-five cents"

πŸ“ Function Signature

numberToWords

Converts a number to its corresponding words representation.

Parameters

  • num (number): The number to be converted.
  • options (Options, optional): An optional object to specify formatting options.

Returns

  • string: The words representation of the number.

Options

MoneyOptions

type MoneyOptions = {
  currency: [string, string];
  minor?: [string, string];
};
  • currency (required): An array of two strings representing the singular and plural forms of the currency.
  • minor (optional): An array of two strings representing the singular and plural forms of the minor currency unit.

Options

type Options = {
  money?: MoneyOptions;
};
  • money (optional): An object specifying the money formatting options.

πŸ“„ Example Code

Here is an example of how you can use the library in your project:

import { numberToWords } from "number-to-words";

const number = 1234;
const words = numberToWords(number);
console.log(words); // "one thousand two hundred thirty-four"

const moneyOptions = {
  money: {
    currency: ["euro", "euros"],
    minor: ["cent", "cents"]
  }
};

const moneyWords = numberToWords(1234.56, moneyOptions);
console.log(moneyWords); // "one thousand two hundred thirty-four euros and fifty-six cents"

License

MIT

Contributions

Contributions are welcome! Please open an issue or submit a pull request on GitHub.

Author

Developed by Qit.tools.


Feel free to explore the source code and contribute to this library on GitHub.

About

This tiny library (πŸͺΆ 1.4 KB) converts numbers to English words, supporting both general numeric values and monetary values with customizable currency and minor units.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages