加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flex处理浮点数四舍五入问题

发布时间:2020-12-15 04:20:03 所属栏目:百科 来源:网络整理
导读:flex处理浮点数的四舍五入有两种,一种是整数的四舍五入(Math.round(v:Number)),一种是小数的四舍五入(Number.toFixed(i:unit))。 问题:使用flex的toFixed()函数保留小数时你会发现经常有一些情况下是不能完成四舍五入的,例如你要保留小数点后两位数字
flex处理浮点数的四舍五入有两种,一种是整数的四舍五入(Math.round(v:Number)),一种是小数的四舍五入(Number.toFixed(i:unit))。
问题:使用flex的toFixed()函数保留小数时你会发现经常有一些情况下是不能完成四舍五入的,例如你要保留小数点后两位数字,小数点后的第一位如果是2,第二位是9,第三位大于等于5,这是就会出现下面这种情况:
var num:Number = 0.295
var fm:Number = num.toFixed(2)=0.29;这里不是我们期望的四舍五入结果:0.30
处理此类问题的办法是使用Math.round(n:Number)+Number.fixed()方法的结合,如处理上面的问题:
var fm:Number =?(Math.round(num*100)/100).toFixed(2);
处理结果:fm=0.30;
说明:如果是保留一位出现此问题:fm*10/100,以此类推。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读