JavaScript的Math对象是无需实例化的全局工具对象,所有方法均通过Math.方法名()调用;它不处理字符串或BigInt,参数自动转数字,失败则返回NaN;常用方法包括abs、floor、ceil、round、trunc;random()返回[0,1)随机浮点数;max/min支持扩展运算符;三角函数以弧度为单位,log为自然对数。

JavaScript 的 Math 对象是无需实例化的全局工具对象,所有方法都通过 Math.方法名() 直接调用。它不处理字符串或 BigInt,参数会自动转为数字;若转换失败(如 "abc"),多数方法返回 NaN。
基础数值处理
处理小数和符号最常用:
-
Math.abs(x):返回绝对值,比如Math.abs(-3.5)→3.5 -
Math.floor(x):向下取整,Math.floor(4.9)→4;负数也向更小整数取,Math.floor(-2.1)→-3 -
Math.ceil(x):向上取整,Math.ceil(4.1)→5;Math.ceil(-2.9)→-2 -
Math.round(x):四舍五入到最近整数,Math.round(2.5)→3,Math.round(-2.5)→-2(注意:-2.5 向上舍入) -
Math.trunc(x)(ES6):直接截去小数部分,Math.trunc(-4.7)→-4,不参与四舍五入逻辑
随机数与范围生成
Math.random() 是唯一生成随机数的方法,它返回 [0, 1) 区间的浮点数:
- 生成
0到n-1的随机整数:Math.floor(Math.random() * n) - 生成
a到b(含)的随机整数:Math.floor(Math.random() * (b - a + 1)) + a - 避免常见错误:不要用
Math.round()生成区间整数,会导致边界概率偏低
极值与幂运算
批量比较和指数计算很实用:
-
Math.max(...numbers)和Math.min(...numbers)支持扩展运算符,例如Math.max(...[2, 8, 1])→8 -
Math.pow(x, y)等价于x ** y,但兼容性更好;Math.sqrt(x)是Math.pow(x, 0.5)的快捷写法 - 新增方法如
Math.cbrt(x)(立方根)、Math.hypot(...values)(多维欧氏距离)可按需选用
三角与对数函数注意事项
这些方法单位统一为**弧度**,不是角度:
- 角度转弧度:乘
Math.PI / 180;弧度转角度:除以该值 -
Math.sin(Math.PI / 2)→1,但Math.sin(90)≠ 1(因为 90 被当作弧度) -
Math.log(x)是自然对数(以e为底);要算常用对数(以 10 为底),可用Math.log10(x)(ES6)或Math.log(x) / Math.LN10
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











