Math.ceil()
函数返回大于或等于一个给定数字的最小整数。
Note: Math.ceil(
NaN
error.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
语法
Math.ceil(x)
参数
-
x
-
一个数值。
-
返回值
大于或等于给定数字的最小整数。
描述
由于 ceil
是 Math
的静态方法,所以应该像这样使用:Math.ceil()
,而不是作为你创建的 Math
实例的方法。
示例
使用 Math.ceil
下例展示了 Math.ceil()
的使用:
// Closure
(function() {
/**
* Decimal adjustment of a number.
*
* @param {String} type The type of adjustment.
* @param {Number} value The number.
* @param {Integer} exp The exponent (the 10 logarithm of the adjustment base).
* @returns {Number} The adjusted value.
*/
function decimalAdjust(type, value, exp) {
// If the exp is undefined or zero...
if (typeof exp === 'undefined' || +exp === 0) {
return Math[type](value);
}
value = +value;
exp = +exp;
// If the value is not a number or the exp is not an integer...
if (isNaN(value) || !(typeof exp === 'number' && exp % 1 === 0)) {
return NaN;
}
// Shift
value = value.toString().split('e');
value = Math[type](+(value[0] + 'e' + (value[1] ? (+value[1] - exp) : -exp)));
// Shift back
value = value.toString().split('e');
return +(value[0] + 'e' + (value[1] ? (+value[1] + exp) : exp));
}
// Decimal round
if (!Math.round10) {
Math.round10 = function(value, exp) {
return decimalAdjust('round', value, exp);
};
}
// Decimal floor
if (!Math.floor10) {
Math.floor10 = function(value, exp) {
return decimalAdjust('floor', value, exp);
};
}
// Decimal ceil
if (!Math.ceil10) {
Math.ceil10 = function(value, exp) {
return decimalAdjust('ceil', value, exp);
};
}
})();
// Round
Math.round10(55.55, -1); // 55.6
Math.round10(55.549, -1); // 55.5
Math.round10(55, 1); // 60
Math.round10(54.9, 1); // 50
Math.round10(-55.55, -1); // -55.5
Math.round10(-55.551, -1); // -55.6
Math.round10(-55, 1); // -50
Math.round10(-55.1, 1); // -60
// Floor
Math.floor10(55.59, -1); // 55.5
Math.floor10(59, 1); // 50
Math.floor10(-55.51, -1); // -55.6
Math.floor10(-51, 1); // -60
// Ceil
Math.ceil10(55.51, -1); // 55.6
Math.ceil10(51, 1); // 60
Math.ceil10(-55.59, -1); // -55.5
Math.ceil10(-59, 1); // -50
规范
规范版本
规范状态
注解
ECMAScript 1st Edition (ECMA-262)
Standard
Initial definition. Implemented in JavaScript 1.0.
ECMAScript 5.1 (ECMA-262)
Math.ceil
Standard
ECMAScript 2015 (6th Edition, ECMA-262)
Math.ceil
Standard
ECMAScript Latest Draft (ECMA-262)
Math.ceil
Draft
浏览器兼容性
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop
Mobile
Server
ceil
Chrome Full support 1
Edge Full support 12
Firefox Full support 1
IE Full support 3
Opera Full support Yes
Safari Full support Yes
WebView Android Full support 1
Chrome Android Full support 18
Firefox Android Full support 4
Opera Android Full support Yes
Safari iOS Full support Yes
Samsung Internet Android Full support 1.0
nodejs Full support Yes
Legend
-
Full support
-
Full support
参见