JavaScript中的乘法int和float(double)
我想使用JavaScript中的乘法int和float(double),javascript,Javascript,我想使用JavaScript进行乘法 2和0.15的乘积是0.3,但3和0.15的乘积是0.44999996。我想得到0.45这样的结果。如何使用JavaScript?这是一个舍入错误。您可能希望将数字四舍五入到固定的位数,如下所示: parseFloat((your_number).toFixed(2)); 不幸的是,这在任何使用浮点运算的语言中都会发生。当浮点操作被编码成二进制,执行操作,并从二进制解码,以您期望的形式报告答案时,就会产生一个伪影 根据您想要对输出执行的操作,您可以调用类似
JavaScript
进行乘法2和0.15的乘积是0.3,但3和0.15的乘积是0.44999996。我想得到0.45这样的结果。如何使用
JavaScript?
这是一个舍入错误。您可能希望将数字四舍五入到固定的位数,如下所示:
parseFloat((your_number).toFixed(2));
不幸的是,这在任何使用浮点运算的语言中都会发生。当浮点操作被编码成二进制,执行操作,并从二进制解码,以您期望的形式报告答案时,就会产生一个伪影
根据您想要对输出执行的操作,您可以调用类似round()的函数将其四舍五入到小数位数,或者使用称为公差的(小)数字将输出与值进行比较。例如,如果两个数字的绝对差值小于此公差,则认为它们相等。JavaScript中没有
int
或float
。一切都是双重的。也就是说,如果你想把你的值转换成一个字符串,你要寻找的是什么。我怎样才能得到0.15和3的乘法的0.45的结果呢?看这个:是的,总是JavaScript,它被破坏了!浮点在所有语言中都是一样的,它们遵守IEEE 754中的规则。这很好,但它会产生一个字符串FWIW@是的,我知道,OP可能不会。@Limlights你有一个很好的观点,我忘记了返回类型。。。我将用parseFloat