The Math.min()
function returns the smallest of zero or more numbers.
Syntax
Math.min([value1[, value2[, ...]]])
Parameters
value1, value2, ...
- Numbers.
Return value
The smallest of the given numbers. If at least one of the arguments cannot be converted to a number, NaN
is returned.
Description
Because min()
is a static method of Math
, you always use it as Math.min()
, 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.min()
This finds the min of x
and y
and assigns it to z
:
var x = 10, y = -20; var z = Math.min(x, y);
Clipping a value with Math.min()
Math.min()
is often used to clip a value so that it is always less than or equal to a boundary. For instance, this
var x = f(foo); if (x > boundary) { x = boundary; }
may be written as this
var x = Math.min(f(foo), boundary);
Math.max()
can be used in a similar way to clip a value at the other end.
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.min' in that specification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Math.min' in that specification. |
Standard | |
ECMAScript 2017 Draft (ECMA-262) The definition of 'Math.min' 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) |
See also
Document Tags and Contributors
Tags:
Contributors to this page:
eduardoboucas,
fscholz,
Mingun,
Sheppy,
ethertank,
trevorh,
Ole Laursen,
evilpie,
Mgjbot,
Kyodev,
Nickolay,
SylvainPasche,
Maian,
Marcoos,
Dria
Last updated by:
eduardoboucas,