Math

Math

JavaScript的 Math 对象是一个内置对象,它提供了一系列数学常量和函数,用于执行各种数学运算。由于 Math 是一个静态对象,其属性和方法可以直接通过 Math 来访问,而不需要创建实例。

常量

Math对象提供了一些常用的数学常量,例如:

  • Math.PI:圆周率π,约等于3.14159。
  • Math.E:自然对数的底数e,约等于2.718。
  • Math.LN2:2的自然对数,约等于0.693。
  • Math.LN10:10的自然对数,约等于2.302。
  • Math.LOG2E:e的以2为底的对数,约等于1.442。
  • Math.LOG10E:e的以10为底的对数,约等于0.434.
  • Math.SQRT1_2:1/2的平方根,约等于0.707。
  • Math.SQRT2:2的平方根,约等于1.414。

方法

Math对象提供了许多数学运算的方法,以下是一些常用的方法:

  • 四舍五入和取整

    • Math.round(x):四舍五入到最接近的整数。
    • Math.floor(x):向下取整,即取小于或等于x的最大整数。
    • Math.ceil(x):向上取整,即取大于或等于x的最小整数.
    • Math.trunc(x):去除x的小数部分,只保留整数部分。
    • Math.sign(x):返回x的符号,-1表示负数,1表示正数,0表示零,NaN表示非数字。
  • 随机数

    • Math.random():返回一个0到1之间的随机数(包括0,但不包括1)。
  • 三角函数

    • Math.sin(x):返回x的正弦值。
    • Math.cos(x):返回x的余弦值。
    • Math.tan(x):返回x的正切值。
    • Math.asin(x):返回x的反正弦值。
    • Math.acos(x):返回x的反余弦值。
    • Math.atan(x):返回x的反正切值。
    • Math.atan2(y, x):返回从原点到点(x, y)的线段与x轴正方向的夹角的反正切值。
  • 指数和对数

    • Math.exp(x):返回e的x次幂。
    • Math.log(x):返回x的自然对数(以e为底)。
    • Math.log10(x):返回x的以10为底的对数。
    • Math.log2(x):返回x的以2为底的对数.
    • Math.pow(x, y):返回x的y次幂。
  • 平方根和立方根

    • Math.sqrt(x):返回x的平方根。
    • Math.cbrt(x):返回x的立方根。
  • 最大值和最小值

    • Math.max(x, y, z, ...):返回一组数中的最大值。
    • Math.min(x, y, z, ...):返回一组数中的最小值。
  • 其他

    • Math.abs(x):返回x的绝对值。
    • Math.hypot(x, y, z, ...):返回所有参数平方和的平方根,即计算直角三角形的斜边长度。
    • Math.clz32(x):返回x的32位整数形式的前导零的数量。
    • Math.imul(x, y):返回x和y的32位整数乘积。
    • Math.fround(x):返回x的四舍五入到最接近的32位单精度浮点数的值。

示例

1
2
3
4
5
6
7
8
9
console.log(Math.PI); // 输出圆周率π
console.log(Math.round(3.7)); // 输出4
console.log(Math.floor(3.7)); // 输出3
console.log(Math.ceil(3.2)); // 输出4
console.log(Math.random()); // 输出一个0到1之间的随机数
console.log(Math.sin(Math.PI / 2)); // 输出1
console.log(Math.pow(2, 3)); // 输出8
console.log(Math.max(1, 3, 2)); // 输出3
console.log(Math.min(1, 3, 2)); // 输出1

Math对象提供的方法和常量在数学计算和处理数值时非常有用,能够帮助开发者简化代码并提高程序的效率。