Nzh
适用于需要转换阿拉伯数字与中文数字的场景。
特点如下:
兆
,京
还是厘
都可以用)万万亿
代替亿亿
$ npm install nzh --save $ bower install nzh --save
var Nzh = require("nzh"); var nzhcn = require("nzh/cn"); //直接使用简体中文 var nzhhk = require("nzh/hk"); //繁体中文
注: 浏览器直接引用请使用
dist/
文件夹中的文件 (适配CMD,AMD);
var nzhcn = Nzh.cn; // 使用简体中文, 另外有 Nzh.hk -- 繁体中文 nzhcn.encodeS(100111); // 转中文小写 >> 十万零一百一十一 nzhcn.encodeB(100111); // 转中文大写 >> 壹拾万零壹佰壹拾壹 nzhcn.encodeS("1.23456789e+21"); // 科学记数法字符串 >> 十二万三千四百五十六万万七千八百九十万亿 nzhcn.toMoney("100111.11"); // 转中文金额 >> 人民币壹拾万零壹佰壹拾壹元壹角壹分
为方便使用,默认实现了两个对像:
Nzh.cn
简体中文Nzh.hk
正体中文(繁体中文)都包含以下方法:
encodeS(num,options)
转中文小写encodeB(num,options)
转中文大写toMoney(num,options)
转中文金额decodeS(zh_num)
中文小写转数字decodeB(zh_num)
中文大写转数字// options.tenMin // encodeS默认true nzhcn.encodeS("13.5"); // 十三点五 nzhcn.encodeS("13.5", {tenMin:false}); // 一十三点五 // encodeB默人false nzhcn.encodeB("13.5"); // 壹拾叁點伍 nzhcn.encodeB("13.5", {tenMin:true}); // 拾叁點伍 // options.ww //Nzh.cn和Nzh.hk未引入兆、京等单位,超千万亿位时,默认以争议较少的万万亿为单位 nzhcn.encodeS(1e16); // 一万万亿 nzhcn.encodeS(1e16, {ww: false}); // 一亿亿 // options.outputString console.log(nzhcn.decodeS('一万万万万亿', {outputString: false})); // 1e+24 console.log(nzhcn.decodeS('一万万万万亿', {outputString: true})); // "1000000000000000000000000" // options.complete nzhcn.toMoney("1"); //人民币壹元整 nzhcn.toMoney("1",{complete:true}); //人民币壹元零角零分 nzhcn.toMoney("0.1"); //人民币壹角 nzhcn.toMoney("0.1",{unOmitYuan:true}); //人民币零元壹角 nzhcn.toMoney("0.1",{complete:true}); //人民币零元壹角零分 //outSymbol 默认 true nzhcn.toMoney("1"); //人民币壹元整 nzhcn.toMoney("1",{outSymbol:false}); //壹元整
tenMin
: 十的口语化开关, 默认值为 false
Nzh.cn
和Nzh.hk
中的encodeS
方法默认 true
ww
: "万万"化开关, 默认值为 true
outputString
中文数字转阿阿拉伯数字时, 输出为字符串类型, 解决输出对出超大数时可能输出科学计数法的问题,默认 false
;unOmitYuan
: 个为零时不省略元, toMoney
函数专用配置, 默认 false
complete
: 输出完整金额开关, toMoney
函数专用配置, 默认 false
forceZheng
: 以输出结果加“整”(只要输出的结果没有到分位就加“整”), toMoney
函数专用配置, 默认 false
outSymbol
: 输出金额前缀字符, toMoney
函数专用配置, 默认 true
var nzh = new Nzh({ ch: "〇壹贰叁肆伍陆柒捌玖", // 数字字符 ch_u: "个十百千万亿兆京", // 数位单位字符,万以下十进制,万以上万进制,个位不能省略 ch_f: "负", // 负字符 ch_d: "点", // 小数点字符 m_u: "元角分厘", // 金额单位 m_t: "人民币", // 金额前缀 m_z: "正" // 金额无小数后缀 }); nzh.encode("10001000000000000"); // 壹京〇壹兆 nzh.decode("壹兆"); // 1000000000000 nzh.toMoney("1.234"); // 人民币壹元贰角叁分肆厘
数字转中文
nzh.decode(zh_num,options)中文转数字
数字转金额
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4