前端面试题 | js存储精度 mean_seon 2023-03-17 42 阅读1分钟 问题 **0.1+0.2!=0.3的原因是什么** 解析 JavaScript对于小数数据使用双精度存储,10进制的小数转为二进制时候会损失一部分精度,因此再进行运算的话结果会不准确。10进制的小数转二进制的方法是按位乘2并保留整数部分,由于双精度是按53存储,如果超过这个长度会四舍五入。浮点数值计算会产生误差是基于IEEE754数值的浮点计算的通病,ECMAScript并非独此一家。 例如:(摘自王道计算机组成原理)