浮点数精度

ECMAScript 中的 Number 类型使用 IEEE754 标准来表示整数和浮点数值。所谓 IEEE754 标准,全称 IEEE 二进制浮点数算术标准,这个标准定义了表示浮点数的格式等内容。

在 IEEE754 中,规定了四种表示浮点数值的方式:单精确度(32位)、双精确度(64位)、延伸单精确度、与延伸双精确度。像 ECMAScript 采用的就是双精确度,也就是说,会用 64 位来储存一个浮点数。

文章链接

      // 精度问题
      console.log(0.1 + 0.2)
      console.log(0.6 - 0.5)

      // 二进制转十进制
      console.log(parseInt(1100100, 2))

      // 十进制转二进制
      console.log(parseFloat(0.1).toString(2))

      // 以指定的精度返回该数值对象的字符串表示
      console.log((0.1 + 0.2).toPrecision(21))
      console.log((0.3).toPrecision(21))