小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。
前言
Math 是 JavaScript 的一个内置对象,它提供了一些数学属性和数学函数方法,可以去对数字进行计算,它用于 Number 类型。
Math 是什么?
Math 和其它的全局对象不同,Math 不是一个构造器。Math 的所有属性和方法都是静态的。如果要调用它的方法。直接使用并传入对应的参数,如:Math.max(x)。
前端开发中常用到的是 Math 的方法,所以本文中属性 就不介绍了
常用的 Math 方法
Math.abs(x)
返回一个数的绝对值
> Math.abs(1.9)
// 1.9
> Math.abs(-1)
// 1
> Math.abs(0)
// 0
Math.ceil(x)
返回大于或等于给定数字的最小整数,即一个数向上取整后的值。
Math.ceil(.95)
// 1
Math.ceil(4)
// 4
Math.ceil(7.004)
// 8
Math.ceil(-7.004)
// -7
Math.ceil(-0.004)
// -0
Math.floor(x)
返回小于或等于指定数字的最大整数,即一个数向下取整后的值。\
Math.floor(45.96)
// 45
Math.floor(45.01)
// 45
Math.floor(45)
// 45
Math.floor(-45.01)
// -46
Math.floor(-45.96)
// 46
Math.max([x[, y[, …]]])
返回一组数字中的最大值.
如果没有参数,则结果为 -Infinity。
如果有任一参数不能被转换为数值,则结果为 NaN。
Math.max(10, 20); // 20
Math.max(-10, -20); // -10
Math.max(-10, 20); // 20
Math.max(null, 2, 3) // 3
Math.max(null, -2, -3) // null被转为 0 :0
Math.max(undefined, -2, -3) // NaN
Math.max('re', 2, 3) // NaN
Math.max([99, 32], -2, -3) // NaN
Math.min([x[, y[, …]]])
返回一组数字中的最小值.
如果没有参数,结果为Infinity。
如果有任一参数不能被转换为数值,结果为 NaN。
Math.random()
一个浮点型伪随机数字,在0(包括0)和1(不包括)之间
- 得到一个大于等于0,小于1之间的随机数
function getRandom() {
return Math.random();
}
- 得到任意两个数之间的随机数
不小于 min(有可能等于),并且小于(不等于)max
function getRandomArbitrary(min, max) {
return Math.random() * (max - min) + min;
}
Math.round(x)
返回四舍五入后的整数
Math.round(20.49); //20
Math.round(20.5); //21
Math.round(-20.5); //-20 负数部分等于0.5的情况
Math.round(-20.51); //-21
Math.trunc(x)
返回一个数的整数部分,直接去除其小数点及之后的部分。
删除掉数字的小数部分和小数点,不管参数是正数还是负数。
传入该方法的参数会被隐式转换成数字类型。
Math.trunc(13.37) // 13
Math.trunc(42.84) // 42
Math.trunc(0.123) // 0
Math.trunc(-0.123) // -0
Math.trunc("-1.123") // -1
Math.trunc(NaN) // NaN
Math.trunc("foo") // NaN
Math.trunc() // NaN
结语
如果这篇文章帮到了你,欢迎点赞👍和关注⭐️。
文章如有错误之处,希望在评论区指正🙏🙏。