money-formatter
v0.1.4
Published
Simple Javascript library for currency formatting
Downloads
3,160
Readme
money-formatter
Simple Javascript library for currency formatting.
It allows you to format currencies without specifying any formatting arguments besides the currency code and number value itself, thanks to rules from the currency-format package.
Installation
Install from npm or bower
npm install money-formatter
# or bower install money-formatter
Usage
For Node.js, Browserify and Webpack
You can import whole module
var moneyFormatter = require('money-formatter');
// Or in ES6
// import moneyFormatter from 'money-formatter';
moneyFormatter.format('USD', 10); // => '$10.00'
Or use separate functions
import { format } from 'money-formatter';
format('EUR', 123); // => '€123.00'
Other
You can add UMD distribution (from dist/money-formatter.js
) directly to
HTML and use it with AMD loader or from the global object
<script src="path/to/dist/money-formatter.js"></script>
<script>
var moneyFormatter = require('money-formatter');
// Or use window.moneyFormatter if you are not using requirejs;
</script>
API
format(currencyCode, amount, [fractionSize=2, useAlphaCode=false]) => string
Formats number based on the specified currency params.
If fractionSize
is not provided, the currency's fraction size from ISO 4217
will be used. It fallbacks to default value 2
if currency have no
fraction size.
useAlphaCode
is a flag to use alphabetic code (e.g. 'USD') instead of
commonly used symbol (e.g. '$') and apply basic formatting from formatSimple
.
You may want to use it in ASCII-only environments or if you want to
align output layout.
moneyFormatter.format('USD', 1234567.89); // => '$1,234,567.89'
moneyFormatter.format('RUR', 10, 0); // => '10 ₽'
moneyFormatter.format('USD', 10, 0, true); // => '10 USD'
formatSimple(currencyName, amount, [fractionSize=2]) => string
moneyFormatter.formatSimple('$$$', 123, 0); // => '123 $$$'
formatToHTML(currencyCode, amount, [fractionSize=2, useAlphaCode=false]) => string
Same as format
but outputs string with HTML element for proper bidirectional
output in browsers.
moneyFormatter.formatToHTML('SAR', -10); // => '<span dir="rtl">-10.00 ﷼</span>'
It will look like -10.00 ﷼
Development
- Clone this repository
- Run
npm install
inside cloned repository directory to install dependencies - To test the code during development run
npm test
to run tests once or usenpm run watch
to watch for changes and autorun tests - Execute
npm run build
to build distributable files to thedist/
dir
License
The MIT License.
See LICENSE