Math.max

Math.max

Math.max() 函数返回一组数中的最大值。

语法

Math.max([value1[, value2[, ...]]])

参数

value1, value2, ...Numbers.

返回值

返回给定的一组数字中的最大值。如果给定的参数中至少有一个参数无法被转换成数字,则会返回NaN

描述

由于maxMath 的静态方法,所以应该像这样使用:Math.max(),而不是作为你创建的 Math实例的方法(Math并非一个构造体)。

如果没有参数,则结果为 -Infinity

如果有任一参数不能被转换为数值,则结果为NaN

示例

使用Math.max()

Math.max(10, 20 // 20 Math.max(-10, -20 // -10 Math.max(-10, 20 // 20

下面的方法使用apply方法寻找一个数值数组中的最大元素。getMaxOfArray([1,2,3]) 等价于 Math.max(1, 2, 3),但是你可以使用 getMaxOfArray ()作用于任意长度的数组上。

function getMaxOfArray(numArray) { return Math.max.apply(null, numArray }

Array.reduce() 也可以通过比较每个值来获得数组的最大值。

var arr = [1,2,3]; var max = arr.reduce(function(a, b) {   return Math.max(a, b }

或者通过使用最新的扩展语句spread operator,获得数组中的最大值变得更容易。

var arr = [1, 2, 3]; var max = Math.max(...arr

规范

SpecificationStatusComment
ECMAScript 1st Edition (ECMA-262)StandardInitial definition. Implemented in JavaScript 1.0.
ECMAScript 5.1 (ECMA-262)The definition of 'Math.max' in that specification.Standard
ECMAScript 2015 (6th Edition, ECMA-262)The definition of 'Math.max' in that specification.Standard
ECMAScript Latest Draft (ECMA-262)The definition of 'Math.max' in that specification.Living Standard

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)

FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)