为了账号安全,请及时绑定邮箱和手机立即绑定

为什么Math.ceil(3.00000000000000000001)结果是3?

为什么Math.ceil(3.00000000000000000001)结果是3?

zhuronghuan 2018-12-30 14:37:56
document.write(Math.ceil(3.00000000000000000001));
查看完整描述

3 回答

?
云流烟

TA贡献7条经验 获得超1个赞

根据语言规范,JavaScript 采用的是“IEEE 754 标准定义的双精度64位格式”,JavaScript 不区分整数值和浮点数值,所有数字在 JavaScript 中均用浮点数值表示。math.cile是向上取整数。你可以试试在js里面算一下"0.1+0.2",会有一个很有趣的结果。

查看完整回答
反对 回复 2019-01-03
?
牛奶老哥哥

TA贡献204条经验 获得超92个赞

因为 js 引擎不识别那么多位的小数。

采纳吧,孩子。

查看完整回答
反对 回复 2019-01-01
?
zhuronghuan

TA贡献1条经验 获得超0个赞

Math.ceil(3.00000000000001)

而这个取出来的值就是4?为什么啊?

查看完整回答
反对 回复 2018-12-30
  • 3 回答
  • 0 关注
  • 1438 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信