javascript - 问一个有趣的问题: 如何将 数字 转成 金额格式
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-07-05 11:02:21
0
3
964

最近做业务,碰到一个有趣的问题:

服务端 为了计算金钱准确,把金钱都转换成 分单位( 1元 = 100 )

到前端需要把它转换成 金钱格式 159 => 1.59元

看了下项目中 实现办法是使用 tofixed 来实现的,不过,有bug。

要求

159 -> 1.59元
1500 -> 15.00 元

88 -> 0.88元
8 -> 0.08元

另外 有的时候显示形式是 (元 大一些,分 小一些)

曾经蜡笔没有小新
曾经蜡笔没有小新

全部回复(3)
Ty80

一个简单的示例如下:

function convertUnit (value) {
  // bug 常见出现自 parseInt 未指定进制
  return parseFloat(parseInt(value, 10) / 100).toFixed(2) + '元'
}

简单的测试用例:

> parseFloat(169 / 100).toFixed(2)
'1.69'
> parseFloat(8 / 100).toFixed(2)
'0.08'
> parseFloat(88 / 100).toFixed(2)
'0.88'
> parseFloat(1500 / 100).toFixed(2)
'15.00'
三叔

雷雷

世界只因有你

雷雷

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板