document.write(Math.floor(a)+"<br/>")

来源:7-14 向下取整floor()

小菜鸟飞

2016-08-04 15:13

 document.write(Math.floor(-8.000000000000000000000000000001)+"<br/>")的结果是-8为什么不是-9

写回答 关注

4回答

  • 慕粉3951534
    2016-10-11 11:03:03
    已采纳

    小数位超出范围了,你可以自己试一下打印一个 10/3,看看小数位后最多几位,我看下来是16位,超出的部分被截断了,所以,你最后的 1 系统并没有读到,等同于 -8 。

    小菜鸟飞

    非常感谢!

    2016-10-12 09:08:37

    共 1 条回复 >

  • 繁华终落尽
    2016-08-04 15:50:50

    向下取值哦,负数和正数相反

    例子

    8.99 取 8

    -8.99 取 -9

    你可以这么理解 取得数比先前小

    繁华终落尽 回复小菜鸟飞

    超过floor字符长度么,你是试试double

    2016-08-05 11:29:17

    共 2 条回复 >

  • qq_笑对人生_9
    2016-08-04 15:36:03

    后++,先用后+

  • qq_礼葬花_03334301
    2016-08-04 15:35:22

    -8比-8.000000000000000000000000000001大,-9比-8.000000000000000000000000000001小,由于floor是向下取整,所以是取小的-9。

    qq_礼葬花... 回复小菜鸟飞

    可以看出-8.0000000...001被自动取整了

    2016-08-04 19:59:21

    共 3 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468194 学习 · 21891 问题

查看课程

相似问题