为什么0.2 * 3产生0.6000000000000001?

时间:2017-05-14 02:02:21

标签: javascript console numbers

我一直在搞乱浏览器控制台,我开始认识一个奇怪的事情(对我来说)。当我输入0.2 * 3时,它产生了0.6000000000000001。不仅有0.2,其他一些小数也会产生这样的数字。

accessToken

我想知道为什么在17个化学名额之后会有一个人。任何人都可以向我解释。

1 个答案:

答案 0 :(得分:0)

这与机器如何在内部存储数字和处理数学内容有关。计算机存储数字的一种常见方式称为“浮点”表示。这基于二进制,将数字编码为1和0的序列。

与我们使用的日常基础-10(十进制)系统如何使得不可能精确地表达1/3(例如0.333333333333 ......)类似,计算机通常使用的浮点系统难以精确地表达某些数字。这通常被称为“浮点不准确”。

还有其他方法可以在计算机上存储数字,这些数字对您发布的示例没有任何问题,但是存储数字所需的内存量和效率存在一些折衷。可以处理数学计算。

相关问题