格式编号始终显示2个小数位
|
我想将数字格式化为始终显示2个小数位,并在适用的情况下四舍五入。
例子:
number display
------ -------
1 1.00
1.341 1.34
1.345 1.35
我一直在使用这个:
parseFloat(num).toFixed(2);
但它会将1
显示为1
,而不是1.00
。
没有找到相关结果
已邀请:
29 个回复
河饶办斜施
现场演示
死簇
系漏
,此答案将失败。 作为更好的解决方案,可以通过使用指数表示法表示的数字来避免舍入问题:
@Kon和原始作者建议的更干净的代码:
您可以在末尾添加ѭ15来保留小数点,例如
,但请注意,它将以字符串形式返回。
信用:JavaScript中的舍入小数
掀辟髓观粟
娠频摩
链眷克袒姜
示例:http://jsfiddle.net/E2XU7/
拟蓬
并将其舍入到小数点后两位:
感谢Razu,本文和MDN \的Math.round参考。
广躺椽
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/NumberFormat
室邢
您还可以从GitHub获取jQuery Number Format。
娠频摩
骂陋冠
n的结果将是:
喷乡顾沥沪
:
将语言环境标签指定为控制小数点分隔符的第一个参数。对于点,请使用例如美国英语语言环境:
这使: 1.35 欧洲的大多数国家/地区使用逗号作为小数点分隔符,因此,例如,如果您使用瑞典语/瑞典语区域设置,则:
它会给: 1,35
朗排谎纷瘟
糖固傻染
席陋临拈
骇毖煽洁铂
瓜唱鬼
逝媳蘑贩茄
在浏览器中显示1.00。 但是,如果您随后对其进行处理,它将还原。
古擅坛犯
弦砂牧扁
事件处理程序:
上面的代码将导致TypeError异常。请注意,尽管html输入类型是\“ number \”,但用户输入实际上是\“ string \”数据类型。但是,toFixed()函数只能在为Number的对象上调用。 我的最终代码如下所示:
我偏爱使用Number()与parseFloat()进行转换的原因是因为我既不必为空的输入字符串也不必为NaN值执行额外的验证。 Number()函数将自动处理一个空字符串并将其隐藏为零。
卧沫
辰炔诚薯
将数字四舍五入到小数点后两位 然后确保用ѭ46解析 返回Number而不是String,除非您不在乎它是String还是Number。
抵浮细
闪票仇门韧
为我工作。
芦歉竭皑
磋判粗惊
}
悸翠疮武昏
谷起
感秆暴壳