# Math.max()

The `Math.max()` function returns the largest of zero or more numbers.

## Syntax

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

### Parameters

`value1, value2, ...`
Numbers.

### Return value

The largest of the given numbers. If at least one of the arguments cannot be converted to a number, `NaN` is returned.

## Description

Because `max()` is a static method of `Math`, you always use it as `Math.max()`, rather than as a method of a `Math` object you created (`Math` is not a constructor).

If no arguments are given, the result is -`Infinity`.

If at least one of arguments cannot be converted to a number, the result is `NaN`.

## Examples

### Using `Math.max()`

```Math.max(10, 20);   //  20
Math.max(-10, -20); // -10
Math.max(-10, 20);  //  20
```

The following function uses `Function.prototype.apply()` to find the maximum element in a numeric array. `getMaxOfArray([1, 2, 3])` is equivalent to `Math.max(1, 2, 3)`, but you can use `getMaxOfArray()` on programmatically constructed arrays of any size.

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

Or with the new `spread operator`, getting the maximum of an array becomes a lot easier.

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

## Specifications

Specification Status Comment
ECMAScript 1st Edition (ECMA-262) Standard Initial 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 2017 Draft (ECMA-262)
The definition of 'Math.max' in that specification.
Draft

## Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)