Math
Math 是js为我们提供的计算对象(单例内置对象)
1 Math 对象的属性
属性 | 说明 |
---|---|
Math.E | 自然对象e的基数e |
Math.LN10 | 10为底的自然对数 |
Math.LN2 | 2为底的自然对数 |
Math.LOG2E | 以2为底e的对数 |
Math.LOG10E | 以10为底e的对数 |
Math.PI | 圆周率π |
Math.SQRT1_2 | 1/2的平方根 |
Math.SQRT2 | 2的平方根 |
2 Math 对象的方法
2.1 最大最小值
- Math.max() 取最大值
- Math.min() 取最小值
数组的最大值
Math.max(...arr)
2.2 小数值取整舍入方法
- Math.ceil() 向上取整
- Math.floor() 向下取整
- Math.round() 四舍五入
- Math.fround() 返回最接近的单精度(32位)浮点值
2.3 随机数
- Math.random() 返回0~1的随机数
- window.crypto.getRandomValues() 如果安全性较高,不允许预测随机数。应该使用这个方法
1~10随机数
Math.floor(Math.random() * 10 + 1)
2~10s随机数
Math.floor(Math.random() * 9 + 2)
2.4 其他方法
- Math.abs(x) x的绝对值
- Math.exp(x) Math.E的x次幂
- Math.expm1(x) Math.exp(x)-1
- Math.log(x) x的自然对数
- Math.log1p(x) 1+Math.log(x)
- Math.pow(x, power) x的power次幂
- Math.hypot(...nums) nums中每个数平方和的平方根
- Math.clz32(x) 32位整数的x的前置零的数量
- Math.sign(x) x符号的1、0、-0或-1
- Math.trunx(x) x的整数部分,删除所有小数
- Math.sqrt(x) x的平方根
- Math.cbrt(x) x的立方根
- Math.acos(x) x的反余弦
- Math.acosh(x) x的反双曲余弦
- Math.asin(x) x的反正弦
- Math.asinh(x) x的反双曲正弦
- Math.atan(x) x的反正切
- Math.atanh(x) x的反双曲正切
- Math.atan2(y,x) y/x的反正切
- Math.cos(x) x的余弦
- Math.sin(x) x的正弦
- Math.tan(x) x的正切