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 相关文章推荐
firefox浏览器下javascript 拖动层效果与原理分析代码
Dec 04 Javascript
JS 中document.URL 和 windows.location.href 的区别
Nov 11 Javascript
javascript实现继承的简单实例
Jul 26 Javascript
利用nginx + node在阿里云部署https的步骤详解
Dec 19 Javascript
浅谈mvvm-simple双向绑定简单实现
Apr 18 Javascript
浅谈Vue.use的使用
Aug 29 Javascript
用POSTMAN发送JSON格式的POST请求示例
Sep 04 Javascript
vue-cli webpack 引入swiper的操作方法
Sep 15 Javascript
浅谈vue限制文本框输入数字的正确姿势
Sep 02 Javascript
vuex存储token示例
Nov 11 Javascript
JS实现超级好看的鼠标小尾巴特效
Dec 01 Javascript
ReactRouter的实现方法
Jan 25 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
有关phpmailer的详细介绍及使用方法
2013/01/28 PHP
PHP中字符与字节的区别及字符串与字节转换示例
2016/10/15 PHP
PHP的mysqli_set_charset()函数讲解
2019/01/23 PHP
javascript 一个自定义长度的文本自动换行的函数
2007/08/19 Javascript
javascript Xml增删改查(IE下)操作实现代码
2009/01/30 Javascript
使用JavaScript动态设置样式实现代码及演示动画
2013/01/25 Javascript
JavaScript fontsize方法入门实例(按照指定的尺寸来显示字符串)
2014/10/17 Javascript
JavaScript实现对下拉列表值进行排序的方法
2015/07/15 Javascript
jQuery简单操作cookie的插件实例
2016/01/13 Javascript
jQuery添加和删除输入文本框标签代码
2016/05/20 Javascript
最实用的jQuery分页插件
2016/10/09 Javascript
Bootstrap基本插件学习笔记之标签切换(17)
2016/12/08 Javascript
详解Html a标签中href和onclick用法、区别、优先级别
2017/01/16 Javascript
Angular.js实现动态加载组件详解
2017/05/28 Javascript
JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析
2018/07/26 Javascript
Vue中多个元素、组件的过渡及列表过渡的方法示例
2019/02/13 Javascript
js实现倒计时器自定义时间和暂停
2019/02/25 Javascript
基于iview的router常用控制方式
2019/05/30 Javascript
webpack 处理CSS资源的实现
2019/09/27 Javascript
如何管理Vue中的缓存页面
2021/02/06 Vue.js
python获取list下标及其值的简单方法
2016/09/12 Python
python 调用c语言函数的方法
2017/09/29 Python
Python学习笔记之Django创建第一个数据库模型的方法
2019/08/07 Python
利用Tensorboard绘制网络识别准确率和loss曲线实例
2020/02/15 Python
Python API 操作Hadoop hdfs详解
2020/06/06 Python
PyCharm2019.3永久激活破解详细图文教程,亲测可用(不定期更新)
2020/10/29 Python
KEEN美国官网:美国人气户外休闲鞋品牌
2021/03/09 全球购物
财务经理岗位职责
2013/11/09 职场文书
火车的故事教学反思
2014/02/11 职场文书
2015年世界无车日活动总结
2015/03/23 职场文书
大学生实习推荐信
2015/03/27 职场文书
个人维稳承诺书
2015/05/04 职场文书
2016年大学生就业指导课心得体会
2015/10/09 职场文书
Pytorch distributed 多卡并行载入模型操作
2021/06/05 Python
浅谈PostgreSQL表分区的三种方式
2021/06/29 PostgreSQL
Python中tqdm的使用和例子
2022/09/23 Python