0
所以我试图采取一个可以以任何正面形式的数字并将其切成小数点后两位。例如,我有一个145.26的输入。然而在我的代码中,这个数字正在下降到145.19。这里是我使用的代码:如何避免或解决地板功能和不正确的整数表示?
var multiplier = 100;
var adjustedNum = input * multiplier;
var truncatedNum = Math[adjustedNum < 0 ? 'ceil' : 'floor'](adjustedNum);
var fixedResult = truncatedNum/multiplier;
所以基本上我的“输入”应该成为145200.但是它实际上是变得145199.9999995或诸如此类的话。这会导致Math.floor方法将其舍入。有什么方法可以解决或避免这种情况?
使用'Math.round()'将'145199.9999'更改为'145200'。 – Barmar
我不想这样做,因为我需要保持2位小数的位置。所以132.267会变成132.27,但我希望它保持为132.26 – Locke
将乘数变为1000. – Barmar