最近做业务,碰到一个有趣的问题:
服务端 为了计算金钱准确,把金钱都转换成 分单位( 1元 = 100 )
到前端需要把它转换成 金钱格式 159 => 1.59元
看了下项目中 实现办法是使用 tofixed 来实现的,不过,有bug。
要求
159 -> 1.59元
1500 -> 15.00 元
88 -> 0.88元
8 -> 0.08元
另外 有的时候显示形式是 (元 大一些,分 小一些)
最近做业务,碰到一个有趣的问题:
服务端 为了计算金钱准确,把金钱都转换成 分单位( 1元 = 100 )
到前端需要把它转换成 金钱格式 159 => 1.59元
看了下项目中 实现办法是使用 tofixed 来实现的,不过,有bug。
要求
159 -> 1.59元
1500 -> 15.00 元
88 -> 0.88元
8 -> 0.08元
另外 有的时候显示形式是 (元 大一些,分 小一些)
function toPrice(d){
return `00${d}`.replace(/(.*)(\d{2})/g,'$1\.$2元').replace(/0*([1-9]*\d\..*)/,'$1')
}
16 回答2.8k 阅读✓ 已解决
6 回答4.1k 阅读✓ 已解决
14 回答5.4k 阅读
7 回答1.8k 阅读
14 回答2k 阅读
3 回答977 阅读✓ 已解决
6 回答1.1k 阅读✓ 已解决
一个简单的示例如下:
简单的测试用例: