在我的计划中,我有一个分数乘数变量,类型为' Number' 当我尝试添加0.1时,我遇到了问题。 这是代码:
scoreMultiplier += 0.1;
trace(scoreMultiplier);
scoreMultiplier最初设置为1,在第一次运行之后,我正确得到值1.1。但是,第二次,跟踪显示1.2000000000000002,
,下次显示1.3000000000000003
。
没有其他代码可以修改scoreMultiplier。这是一个问题,首先是因为它显示在我的游戏屏幕上并离开了屏幕,其次是因为如果条件scoreMultiplier==2
例如由于添加中的奇怪故障而无效。
如果有人知道造成这种情况的原因,或者至少如何将该值截断为1位小数,那就太棒了。
答案 0 :(得分:1)
Flash不喜欢浮点数。完全没有。尽量避免使用它们。