为什么0.1+0.2不等于0.3

console.log(0.1+0.2); //0.30000000000000004
console.log(0.1+0.2==0.3); //false

 

计算机运算时,整数运算是没有问题的,用浮点数进行运算时,精度会出现问题。

0.1和0.2是近似值,近似值相加就得到了 0.30000000000000004

 

改正:数值先*10,再/10

var a=(0.1*10+0.2*10)/10;
console.log(a==0.3);

这样得到结果就为:true

 

posted @ 2021-11-02 19:40  十七日尾  阅读(77)  评论(0)    收藏  举报