0.1+0.2 != 0.3 这谁顶得住啊

# 浮点数的运算

基础数据类型中,代表数字的只有一个 Number(虽然后面推出了 BigNumber,那也放到后面说)。它的实现遵循 IEEE 754 标准,使用 64 位固定长度来表示,也就是标准的 double 双精度浮点数(相关的还有 float 32 位单精度)。

10 进制转二进制

比如 10 转为二进制,其实就是对一个数不断的求余%:
10/2 = 5 余 0
5/2 = 2 余 1 (这里的 5 来自上一步的结果)
2/2 = 1 余 0 (2 也同理,来自上一步的结果)
1/2 = 0 余 1 (直到最后的数字等于 0,就结束)

然后把结果的余数从下往上拼成一个字符串得:1010

所以10转二进制就是 1010

上面的官方解释看不懂也没关系,直接点来说就是计算机处理数据都是二进制的(0,1)。那么0.1转为二进制是多少?

# 超大数运算

# 解决方案

Last Updated: 5/9/2021, 10:45:03 PM