math.max()返回数值中的最大值,语法为Math.max(value1, value2, …, valueN),参数为空时返回-Infinity;处理数组需用扩展运算符或apply方法,传入无效值返回NaN,可隐式转换的字符串数字能正常比较,常用于限制输入、设置最小宽高等场景。

javaScript 中的 Math.max() 函数用于返回一组数值中的最大值。它不会改变原始数据,只做比较并返回结果。
基本语法
Math.max(value1, value2, …, valueN)
可以传入多个数字作为参数,函数会返回其中最大的一个。如果参数为空,返回 -Infinity。
示例:
Math.max(10, 5, 20); // 返回 20
Math.max(-5, -10, -2); // 返回 -2
Math.max(); // 返回 -Infinity
处理数组中的最大值
如果想从数组中找出最大值,不能直接传数组给 Math.max(),但可以通过扩展运算符(…)或 apply 方法实现。
使用扩展运算符(推荐):
const numbers = [3, 9, 4, 15, 7];
Math.max(…numbers); // 返回 15
使用 apply 方法(旧写法):
Math.max.apply(NULL, numbers); // 返回 15
注意事项
传入非数字字符串、undefined 或其他无法转换为数字的值时,返回 NaN。
Math.max(1, 2, ‘abc’); // 返回 NaN
Math.max(1, 2, undefined); // 返回 NaN
但如果参数能被隐式转换成数字(如字符串数字),则可以正常处理:
Math.max(‘5′, ’10’, ‘3’); // 返回 10(字符串被转为数字)
实际应用场景
- 限制用户输入的最大值:比如确保某个值不超过设定上限。
- 初始化最小比较值:常与 Math.min 配合使用,例如在遍历中找极值。
- 设置最小宽度或高度时配合使用(如 Math.max(window.innerWidth, 800) 确保页面至少 800px 宽)。
基本上就这些,用法简单但很实用。