我有添加负数jquery的问题, 代码:
var k = parseFloat(-0.1) + parseFloat(0.3);
console.log(k); // 0.19999999999999998
但我需要结果0.2
答案 0 :(得分:1)
这与计算机解析数字的方式有关,特别是浮点表示。 0.1是1/10,其不能由多个碱基2(即2 ^ n)精确表示。
如果您可以接受某些舍入错误,我会将您推荐给此answer,并执行以下操作:
var k = parseFloat(-0.1) + parseFloat(0.3);
k = Math.round(k * 100) / 100; // 2 decimal points precision. Use 10 instead of 100 for 1 decimal point precision.
console.log(k); // 0.2 :)
希望这有帮助。