Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript中的乘法int和float(double)_Javascript - Fatal编程技术网

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