JavaScript Math.ceil 方法(对数值向上取整)


Posted in Javascript onJanuary 09, 2015

JavaScript Math.ceil 方法
Math.ceil 方法用于对数值向上取整,即得到大于或等于该数值的最小整数。语法如下:

Math.ceil(x)
参数说明:

参数 说明
x 必需。必须是一个数值。

提示:该方法与 Math.floor 方法正好相反。

Math.ceil 方法实例

<script language="JavaScript">
document.write( Math.ceil(0.35) + "<br />" );
document.write( Math.ceil(10) + "<br />" );
document.write( Math.ceil(-10) + "<br />" );
document.write( Math.ceil(-10.1) );
</script>

运行该例子,输出:

1
10
-10
-10

Math.ceil 方法的错误?
试着运行下面的例子:

<script language="JavaScript"> document.write( Math.ceil(2.1/0.7) ); </script> 该例子运行的结果并不是如我们期望的得到 3(2.1/0.7=3),而是 4,这显然与我们的常识相悖,难道是 Math.ceil 方法的错误?

真实的情况是,在进行 2.1/0.7 计算时,是按照浮点数来处理的。而计算机由于二进制的关系,不可能对浮点数做到完全精确(即通常会损失一点进度),所以导致 2.1/0.7 的计算结果并不是正好等于 3 ,而是超过 3 一点点(约:3.00000000000000044409)。所以该表达式应用了 Math.ceil() 之后,得到的结果是 4 。

关于 ceil 函数不准确的问题,在《PHP 浮点数计算比较及取整不准确的解决方法》一文中也曾提及,在 PHP 中可以方便的用 round() 函数进行处理。但 JavaScript 中的 Math.round() 过于粗暴,因此必须单独写一个函数来处理这类情况,即将 1 位小数点后的多余的数值都取掉,在使用 Math.ceil() 方法。

Javascript 相关文章推荐
form中限制文本字节数js代码
Jun 10 Javascript
你需要知道的JavsScript可以做什么?
Jun 29 Javascript
javascript实现yield的方法
Nov 06 Javascript
jQuery中:empty选择器用法实例
Dec 30 Javascript
jquery获取文档高度和窗口高度汇总
Jan 25 Javascript
AngularJS的依赖注入实例分析(使用module和injector)
Jan 19 Javascript
关于vue.extend和vue.component的区别浅析
Aug 16 Javascript
bootstrap switch开关组件使用方法详解
Aug 22 Javascript
实现div滚动条默认最底部以及默认最右边的示例代码
Nov 15 Javascript
JS函数内部属性之arguments和this实例解析
Oct 07 Javascript
为nuxt项目写一个面包屑cli工具实现自动生成页面与面包屑配置
Sep 29 Javascript
vue相关配置文件详解及多环境配置详细步骤
May 19 Javascript
封装好的js判断操作系统与浏览器代码分享
Jan 09 #Javascript
JavaScript Math.floor方法(对数值向下取整)
Jan 09 #Javascript
使用javascript实现json数据以csv格式下载
Jan 09 #Javascript
js读取csv文件并使用json显示出来
Jan 09 #Javascript
微信JS接口汇总及使用详解
Jan 09 #Javascript
推荐一款jQuery插件模板
Jan 09 #Javascript
JavaScript中Cookie操作实例
Jan 09 #Javascript
You might like
PHP面向对象三大特点学习(充分理解抽象、封装、继承、多态)
2012/05/07 PHP
浅析php-fpm静态和动态执行方式的比较
2016/11/09 PHP
微信公众平台开发教程①获取用户Openid及个人信息图文详解
2019/04/10 PHP
javascript 写类方式之五
2009/07/05 Javascript
jquery1.4.2 for Visual studio 2010 模板文件
2010/07/14 Javascript
js事件监听器用法实例详解
2015/06/01 Javascript
javascript实现全角半角检测的方法
2015/07/23 Javascript
JS获取数组最大值、最小值及长度的方法
2015/11/24 Javascript
AngularJs 弹出模态框(model)
2016/04/07 Javascript
JS取数字小数点后两位或n位的简单方法
2016/10/24 Javascript
jQuery实现左右滑动的toggle方法
2018/03/03 jQuery
使用vue-cli创建项目的图文教程(新手入门篇)
2018/05/02 Javascript
layDate插件设置开始和结束时间
2018/11/15 Javascript
JavaScript实现多个物体同时运动
2020/03/12 Javascript
[00:11]战神迅矛
2019/03/06 DOTA
python 实现自动远程登陆scp文件实例代码
2017/03/13 Python
Python表示矩阵的方法分析
2017/05/26 Python
python实现指定文件夹下的指定文件移动到指定位置
2018/09/17 Python
PyQt4实时显示文本内容GUI的示例
2019/06/14 Python
Django中reverse反转并且传递参数的方法
2019/08/06 Python
Python实现剪刀石头布小游戏(与电脑对战)
2019/12/31 Python
基于python+selenium的二次封装的实现
2020/01/06 Python
丝芙兰法国官网:SEPHORA法国
2016/09/01 全球购物
美国指甲油品牌:Deco Miami
2017/01/30 全球购物
布里斯班女装时尚品牌:Adrift
2017/12/28 全球购物
联想韩国官网:Lenovo Korea
2018/05/10 全球购物
澳大利亚在线家具、灯饰和家居装饰店:LivingStyles
2018/11/20 全球购物
学校学雷锋活动总结
2014/06/26 职场文书
工作经常出错的检讨书
2014/09/13 职场文书
机关干部三严三实心得体会
2014/10/13 职场文书
酒会邀请函
2015/01/31 职场文书
2015年七一建党节活动总结
2015/03/20 职场文书
2015年母亲节活动策划方案
2015/05/04 职场文书
欠条样本
2015/07/03 职场文书
八年级作文之一起的走过日子
2019/09/17 职场文书
springboot 启动如何排除某些bean的注入
2021/08/02 Java/Android