Number String Representation
Take a decimal number and convert it to a string representation. For example if you have the number 2523.04
, this module will convert 2523.04
to "Two thousand five hundred twenty-three and 04/100 dollars"
Installation
npm install -g number-string-representation
Requirements
The module requires that you have the node
and npm
binaries installed and available on your path. The latest version node.js is available here and includes the npm binary as well
Usage
The module can be used either as a stand-alone command line tool or within other javascript code. The module has only been tested on node.js versions 0.8 & 0.10 but should work in the browser without issues
As a command line tool
number-string-representation --number="2523.04"# outputs "Two thousand five hundred twenty-three and 04/100 dollars"
For usage of the command line tool execute the command with no option parameters specified
number-string-representation# prints out usage information
As a module within your own code. Note that you must pass a valid number as the input parameter to module function. String numbers will throw an exception
Valid input parameter example
var numberStringRepresentation = var input = 252304var output = console
Invalid input parameter example
var numberStringRepresentation = var input = '2523.04'var output = // will throw an error hereconsole
Negative numbers
If you supply a negative number as an input, the output will be prepended with the text 'Negative '
var numberStringRepresentation = var input = -252304 // output === 'Negative two thousand five hundred twenty-three and 04/100 dollars'Ne output = console
When using negative numbers with the command line tool, you must pass them using both the equals sign and quotation marks around your value
number-string-representation --number="-2523.04"# outputs "Negative two thousand five hundred twenty-three and 04/100 dollars"
The following will not work and will instead throw an error. Note that the equals sign from the example above is missing here:
number-string-representation --number "-2523.04"
Limitations
Currently the module only supports numbers in the range [-999999999999999, 999999999999999], which corresponds to negative trillions to positive trillions.
If you input a number with fractional cents, they will always be rounded down. For example
number-string-representation --number=".546"# will output "Zero and 54/100 dollars"
Test
# install the development dependencies npm install# run the tests npm test