UNPKG

nupp

Version:

一款由 typescript 编写的 数字转(汉字/大写)的 js 工具库

2 lines (1 loc) 786 B
import{numberCapitalMapInfo as e,numberCharacterMapInfo as t,angularFractionMapInfo as r,unitCapitalMapInfo as l,unitCharacterMapInfo as n}from"../utils/numberMapInfo.js";function o(r,o,s){let u="";for(let g=0,f=r.length;g<f;g++){const h=+r[g],i=o?e[h]:t[h],p=o?l[1][f-1-g]:n[1][f-1-g];u+=0!==h&&s?i+p:i}return u}const s=(s,u,g,f)=>{let h="",i=s.replace(/(?=(\d{4})+$)/g,",").split(",");for(let e=i.length-1;e>=0;e--){let t=g?f?l[0][e]:n[0][e]:"",r=o(i[e],f,g);r.endsWith("零")&&(r=r.replace(/零/d,"")),h=t+r+h}h=h.replace(/(.)\1+/g,"$1"),h+=g?f?"圆":"元":"",u.length<=0&&(h+="整"),u.length>2&&(u=u.substring(0,2));for(let l=0,n=u.length;l<n;l++)0!=Number(u[l])&&(g&&!h.endsWith("零")&&(h+="零"),h+=f?e[Number(u[l])]:t[Number(u[l])],g&&(h+=r[l]));return h};export{s as default};