我有 float :
var a = parseFloat("12.999");
var b = parseFloat("14");
我想将它们显示为:
12.99
14.00 -> with zeros
但是没有舍入,只有 chop 。怎么做?
最佳答案
您结合使用了 Math.floor()
和 Number.prototype.toFixed()
函数,like this :
console.log((Math.floor(a * 100) * 0.01).toFixed(2));
console.log((Math.floor(b * 100) * 0.01).toFixed(2));
Math.floor()会将值 chop 为最接近的较低整数。这就是为什么您需要先乘以 100,然后再乘以 0.01。
Number.prototype.toFixed()将使用设定的小数位数格式化您的输出。
大多数语言确实有称为 round
、ceil
、floor
或类似函数的函数,但几乎所有这些函数都四舍五入到最接近的整数,所以乘-圆-除链(或四舍五入到十、百、千...的分-圆-乘)是一个很好的模式。
关于javascript - 如何格式化 float ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35456085/