Math 是静态对象,无构造函数,直接调用;常用函数如 abs、round、floor、ceil、trunc、pow、sqrt;random 生成整数需缩放取整;三角函数用弧度,对数函数注意底数与定义域;常量如 PI、E 等精度高且实用。

Math 对象不是用来“实例化”的,它是一组静态方法和常量的集合,直接通过 Math 调用即可,没有构造函数,也不能用 new Math()。
常用计算函数怎么用?
这些是日常最常调用的函数,注意它们都只接受数字参数,非数字会尝试转为数值(NaN 时返回 NaN):
-
Math.abs(x):取绝对值,Math.abs(-3.5)→3.5 -
Math.round(x):四舍五入到最近整数,Math.round(2.5)→3(注意:.5 向上取) -
Math.floor(x):向下取整,Math.floor(2.9)→2 -
Math.ceil(x):向上取整,Math.ceil(2.1)→3 -
Math.trunc(x):直接截断小数部分(不四舍五入),Math.trunc(-4.7)→-4 -
Math.pow(base, exp)等价于base ** exp,但**更直观;Math.pow(2, 3)→8 -
Math.sqrt(x):开平方,负数返回NaN;Math.sqrt(-1)→NaN
随机数生成为什么不能只靠 Math.random()?
Math.random() 只返回 [0, 1) 区间的浮点数(包含 0,不包含 1),要生成指定范围的整数需手动缩放和取整:
function randomInt(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
randomInt(1, 6); // 模拟掷骰子,结果为 1~6 的整数常见错误:
立即学习“Java免费学习笔记(深入)”;
动态WEB网站中的PHP和MySQL详细反映实际程序的需求,仔细地探讨外部数据的验证(例如信用卡卡号的格式)、用户登录以及如何使用模板建立网页的标准外观。动态WEB网站中的PHP和MySQL的内容不仅仅是这些。书中还提到如何串联JavaScript与PHP让用户操作时更快、更方便。还有正确处理用户输入错误的方法,让网站看起来更专业。另外还引入大量来自PEAR外挂函数库的强大功能,对常用的、强大的包
- 漏掉
+1导致max永远取不到 - 用
Math.round替代Math.floor,导致两端概率减半 - 没校验
min/max类型,传入字符串可能隐式转换出错
三角函数和对数要注意什么单位和定义域?
所有三角函数(Math.sin、Math.cos、Math.tan 等)的输入单位是**弧度**,不是角度。角度转弧度要乘 Math.PI / 180:
Math.sin(45 * Math.PI / 180); // ≈ 0.7071,不是 Math.sin(45)
对数函数:
-
Math.log(x)是自然对数(以e为底),不是常用对数(以 10 为底) - 需要以 10 为底用
Math.log10(x)(ES6+),兼容性差时可用Math.log(x) / Math.LN10 -
x ≤ 0时所有对数函数均返回NaN
Math 常量有哪些实际用途?
这些是预定义的高精度常量,比手写更可靠:
-
Math.PI:圆周率 π,用于角度/弧度换算、圆面积等 -
Math.E:自然对数的底 e,配合Math.exp(x)使用 -
Math.LN2、Math.LN10:log₂(e) 和 log₁₀(e),用于换底公式 -
Math.SQRT2、Math.SQRT1_2:√2 和 1/√2,图形计算中高频出现
别手写 3.14159 或 2.718,精度低还易错。浏览器保证这些常量是当前平台最高精度的双精度表示。










