如何在JavaScript中使用ceil()、floor()和round()对数字进行四舍五入

195 阅读2分钟

简介

在这篇文章中,我们将看看如何在JavaScript中把一个数字四舍五入为整数

JavaScript提供了三种不同的方法来实现这一目标:round() 方法、ceil() 方法和floor() 方法。

所有这些都是Math 对象的静态方法。这意味着它们将直接通过Math.method_name() ,而不是作为Math 对象实例的方法被调用--Math 没有构造函数。

**注意:**这些方法只能在数字上调用,其他的都会产生一个NaN 值。唯一的例外是当它在null 上被调用时 - 在null 上调用方法将总是返回0。

*ceil()*方法

这个方法的名字实际上是 "天花板"的缩写--所以它的名字会自动响起,它把一个数字四舍五入到比当前数字大的最接近的整数值

如果这个数字已经是一个整数,那么就没有什么可四舍五入的,所以它将简单地返回整数。

let x = 4.7
console.log(Math.ceil(x))
// Output: 5

let y = -3.2
console.log(Math.ceil(y))
// Output: -3

let z = "something not a number"
console.log(Math.ceil(z))
// Output: NaN

console.log(Math.ceil(null))
// Output: 0

当你特别想四舍五入到下一个上限时,你将使用ceil()5.1 被四舍五入到6 ,所以如果你想四舍五入到最接近的整数,你将使用round() 函数,在本指南的后面一节中介绍。

*floor()*方法

ceil() 类似,floor() 的方法也是精心选择的,以适应其目的。它将整数四舍五入到比当前整数小的最近的整数。

let x = 4.7
console.log(Math.floor(x))
// Output: 4

let y = -3.2
console.log(Math.floor(y))
// Output: -4

let z = "something not a number"
console.log(Math.floor(z))
// Output: NaN

console.log(Math.floor(null))
// Output: 0

*round()*方法

round() 方法可以被看作是一个二合一的方法,包含了ceil()floor() 。它将数字四舍五入到最接近的整数--根据它的值,它或者 "ceils"这个数字,或者*"floor "*它。

let x = 4.7
console.log(Math.round(x))
// Output: 5

let y = 4.2 
console.log(Math.round(y))
// Output: 4

let z = 4.5
console.log(Math.round(z))
// Output: 5

console.log(Math.round(null))
// Output: 0

x.49以下的所有数字都将被四舍五入到较低的数值,而高于这个数值的所有数字都将被四舍五入到较高的数值。

总结

在这篇简短的文章中,我们看了一些在JavaScript中可以用来对非整数进行四舍五入的方法。从这篇文章中可以看出一些关键的注意事项。

  • Math.ceil()--将数字四舍五入到一个较高的值。
  • Math.floor()--将数字四舍五入到一个较低的值。
  • Math.round() - 将数字四舍五入到较低或较高的值,这取决于数字
  • 当以null 作为参数调用时,这些方法总是返回0。
  • 当调用的参数不是数字或null时,这些方法总是返回NaN