This is a tool for intl currency and percent formatting.the special feature is that it can be uesd in event listenner function onChange of inputNumber
npm i js-currency-format
`usage
`
import CurrencyFormatter from 'js-currency-format';const currencyFormatter = new CurrencyFormatter({
locales: 'zh-CN',
precision: 5,
currency: 'USD',
style: 'currency',
// currencyDisplay: 'code'
});
const b = a.format(10000);
console.log(b);
console.log(a.unformat(b));
`
> if you want to know more details of values from format and unformat, you can see file 'test/index.test.ts';
$3
1. CurrencyFormatter.prototype.parseThousandthsSymbol: (locales?: string | string[]) => string: it can get thousandths symbol form the locales
2. CurrencyFormatter.prototype.parseDecimalSymbol: (locales?: string | string[]) => string: it can get decimal symbol form the locales
3. CurrencyFormatter.prototype.parseStyleSymbol(options?: CurrencyFormatterProps) => [styleSymbolPosition, string]: it can get style symbol form the CurrencyFormatterProps
4. CurrencyFormatter.prototype.format: (formatVal: number | string, localesOrOption?: string | string[], options?: CurrencyFormatterProps) => string
5. CurrencyFormatter.prototype.unformat: (string: number | string, locales?: string | string[], options?: CurrencyFormatterProps & {isNumber: boolean}) => number | string $3
> Number.prototype.toLocaleString.Maybe you can get some informations from this page of MDN;
`
// constructor
interface CurrencyFormatterProps {
locales: string | string[],
minimumIntegerDigits?: number,
precision?: number,
useGrouping?: boolean,
localeMatcher?: 'lookup' | 'best fit',
formatter?: typeof CurrencyFormatter.formatter, style?: 'decimal' | 'currency' | 'percent',
currency?: string,
currencyDisplay?: 'symbol' | 'code' | 'name',
}
//options of format
interface optionsofformat {
minimumIntegerDigits?: number,
precision?: number,
useGrouping?: boolean,
localeMatcher?: 'lookup' | 'best fit',
style?: 'decimal' | 'currency' | 'percent',
currency?: string,
currencyDisplay?: 'symbol' | 'code' | 'name',
}
``