将float转换为String会增加很多数字

时间:2011-09-23 10:23:56

标签: actionscript-3

var myNumber:Number = 1.8;

trace(myNumber); 

以上给出" 1.7999999999999998"

String(myNumber)的转换也给出了" 1.7999999999999998"

这只发生在某些数字上。如果(myNumber == 1.4)它没有给我这个问题。

我已经使用调试器进行了检查,并且跟踪或字符串转换之前和之后的值都是正确的。但是,字符串本身是不正确的。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

由于存储浮点值的方式,它们很少表示您输入的确切值。如果您感兴趣,请阅读浮点值的存储方式但您可以通过舍入到小数位来解决问题我想看看输出。