介绍
在开发中,我们经常会遇到需要格式化数字的情况。比如货币金额、百分比等需要根据不同的业务要求进行格式化。而 number-formatter 是一个轻量级的 npm 包,可以方便地实现数字的格式化。
安装
使用 npm 安装 number-formatter
,命令如下:
npm install number-formatter
使用方法
在项目中引入 number-formatter
:
const numberFormatter = require('number-formatter');
使用 numberFormatter
对象实现数字格式化。
示例代码
1. 格式化成货币金额
const number = 1234567.89; const currency = numberFormatter('#,##0.00', number); console.log(currency); // 输出:1,234,567.89
2. 格式化成百分比
const number = 0.123; const percent = numberFormatter('0.00%', number); console.log(percent); // 输出:12.30%
3. 自定义格式化模板
const number = 12345.67; const customFormat = numberFormatter('#,aaa.00', number, { a: '万' }); console.log(customFormat); // 输出:1,2345.67
参数说明
numberFormatter
接受3个参数。
参数 1:格式化模板
需要格式化的数字的格式化模板。可以使用 #,##0.00
这样的格式,也可以自定义。
常用的格式化符号
#
:数字占位符,必须是一个数字。位数不足时不会补齐 0。0
:数字占位符,必须是一个数字。位数不足时会补齐 0。,
:分隔符,从此处开始每 3 位数字用一个分隔符隔开。.
:小数点。%
:百分号。‰
:千分号。currency
:货币单位,会自动根据浏览器语言环境选择合适的货币单位。+
和-
:符号占位符,根据数值正负情况填充。
参数 2:需要格式化的数字
需要进行格式化的数字。
参数 3(可选):选项对象
选项对象。可用选项包括:
languages
:指定货币和数字格式的语言,默认为当前系统语言。可选项:en-US
(美式),fr-FR
(法式),de-DE
(德式),es-ES
(西班牙式),it-IT
(意大利式),nl-NL
(荷兰式),pt-PT
(葡萄牙式),zh-CN
(中式),可自定义。currency
:货币单位,会自动根据浏览器语言环境选择合适的货币单位。可选项:USD
(美元),EUR
(欧元),GBP
(英镑),JPY
(日元),CNY
(人民币), 可自定义。
注意事项
- 格式化模板不支持中文,需要使用英文符号。
numberFormatter
可以格式化字符串类型的数字,但仍然会将其转化为数字类型进行格式化。因此请确保其它字符已被去除。- 不支持自动将阿拉伯数字转换成中文数字。需要手动实现。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066f943d1de16d83a66c67