Math 对象

发布时间 2023-10-29 23:31:04作者: wanglei1900

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的正切