小菜鸟飞
2016-08-04 15:13
document.write(Math.floor(-8.000000000000000000000000000001)+"<br/>")的结果是-8为什么不是-9
小数位超出范围了,你可以自己试一下打印一个 10/3,看看小数位后最多几位,我看下来是16位,超出的部分被截断了,所以,你最后的 1 系统并没有读到,等同于 -8 。
向下取值哦,负数和正数相反
例子
8.99 取 8
-8.99 取 -9
你可以这么理解 取得数比先前小
后++,先用后+
-8比-8.000000000000000000000000000001大,-9比-8.000000000000000000000000000001小,由于floor是向下取整,所以是取小的-9。
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题