js将数字金额转换为大写人民币

今天换算律师打官司金额,用到了小写金额转化为大写汉字的问题,这里把具体思路分析一下

1、首先判断输入数值正负问题,

   

2、其次有小数点部分需要处理,将数值每次乘以10进行拆分,乘10——%10——结果为角位数值,分位数值同样方法得出,依次将所得数值后面加角、分,


将所有用到的大写数字都定义出来,用来拼接;


循环角、分,按照乘10%10的步骤对数值进行判断;

整数部分则角和分位无值,替换为整。(s = s || '整';    )


3、接下来整数部分相对简单,虽然处理的位数多,但只需要不停的%10就可以,代码如下;

整数部分%10余n   ,便在digit里循环n次,得到对应数字n的大写汉字,如果轮询到零就replace将零剪切,最后将得到的小数部位和整数部位进行拼接;

4、最后一步其实是第一步中提到的负数问题,可归为一步;


完整代码贴一下:



好了!


  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值