var coeff='0.1';
var amount='12.2';
var res = Math.floor(parseFloat(amount) / parseFloat(coeff));
console.log(res);
为什么结果为121
(我期待122
)?
编辑:我的问题含糊不清:floor
功能没问题。我只是想知道为什么12.2 / 0.1不等于122。
答案 0 :(得分:0)
结果是121.99999999999999
来自https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/floor
Math.floor()函数返回小于或等于给定数字的最大整数。
所以它切断了.99999。你可能想用
Math.round(parseFloat(amount) / parseFloat(coeff));
代替