为什么0.1+0.2!==0.3? 通熟易懂的解释及怎么解决

  • 计算机使用二进制存储数据

    • 整数用二进制没有误差,如 9 在计算机中表示为 1001
    • 而有的小数无法用二进制表示,如0.2用二进制表示为1.10011001100....无限循环下去了
      • 所以,累加小数时就会出现误差
      • 这不仅仅是前端javascript会出现这个问题,所有的计算机语言都这样
  • 如果项目中频繁的要做小数点的运算,怎么办?

个人觉得没必要太深究为什么小数用二进制表示会一直循环下去这个问题 这个是计算器很底层的问题 当然真的很有兴趣可以去了解《松本行弘的程序世界》这本书很适合新手且通熟易懂 但是没必要太深究下去

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容