Объект Math является единственным объектом, имеющим некоторые именованные свойства, часть которых является функциями.
Значением внутреннего свойства [[Prototype]] объекта Math является стандартный встроенный объект-прототип Object (15.2.4). Значение внутреннего свойства [[Class]] объекта Math равно "Math"
.
Объект Math не имеет встроенного свойства [[Construct]]. Использование объекта Math в качестве конструктора с оператором new
невозможно.
Объект Math не имеет внутреннего свойства [[Call]]. Вызов объекта Math в качестве функции невозможен.
ПРИМЕЧАНИЕ В данной спецификации фразу "числовое значение x" следует понимать, как указано в пункте 8.5.
Цифровое значение e, основания натуральных логарифмов, равного приблизительно 2,7182818284590452354.
Это свойство имеет атрибуты { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }.
Цифровое значение натурального логарифма 10, равное приблизительно 2,302585092994046.
Это свойство имеет атрибуты { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }.
Цифровое значение натурального логарифма 2, равное приблизительно 0,6931471805599453.
Это свойство имеет атрибуты { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }
Числовое значение логарифма e (основания натуральных логарифмов) по основанию 2, равное приблизительно 1,4426950408889634.
Это свойство имеет атрибуты { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }.
ПРИМЕЧАНИЕ Значение Math.LOG2E
приблизительно равно обратному значению Math.LN2
.
Числовое значение логарифма e (основания натуральных логарифмов) по основанию 10, равное приблизительно 0,4342944819032518.
Это свойство имеет атрибуты { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }.
ПРИМЕЧАНИЕ Значение Math.LOG10E
приблизительно равно обратному значению Math.LN10
.
Числовое значение π, отношения длины окружности к её диаметру, равное приблизительно 3,1415926535897932.
Это свойство имеет атрибуты { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }.
Числовое значение квадратного корня из ½, равное приблизительно 0,7071067811865476.
Это свойство имеет атрибуты { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }.
ПРИМЕЧАНИЕ Значение Math.SQRT1_2
приблизительно равно обратному значению Math.SQRT2
.
Числовое значение квадратного корня из 2, равное приблизительно 1,4142135623730951.
Это свойство имеет атрибуты { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }.
Каждая из перечисленных ниже функций объекта Math
применяет абстрактный оператор ToNumber к каждому из своих аргументов (слева направо, если аргументов несколько), а затем производит вычисление с использованием полученных числовых значений.
В перечисленных ниже функциях обозначения NaN, −0, +0, −∞ и +∞ означают числовые значение, описанные в пункте 8.5.
ПРИМЕЧАНИЕ В настоящей спецификации поведение функций acos
, asin
, atan
, atan2
, cos
, exp
, log
, pow
, sin
и sqrt
описано не полностью, а только те моменты, где требуется возвращение определённых результатов для конкретных значений аргументов, представляющих собой заслуживающие внимания граничные случаи. Для других значений аргументов эти функции должны вычислять приблизительное значение результатов известных математических функций, однако в выборе аппроксимирующих алгоритмов допускается некоторая свобода. Смысл заключается в том, чтобы на заданной аппаратной платформе программист на ECMAScript мог использовать такую же математическую библиотеку, которая доступна на этой же платформе программистам на С.
Выбор алгоритмов остаётся за реализацией, однако рекомендуется (но в настоящем стандарте не описывается) использовать аппроксимирующие алгоритмы для арифметики IEEE 754, которые содержатся в fdlibm
– свободно распространяемой математической библиотеке от Sun Microsystems (http://www.netlib.org/fdlibm).
Возвращает абсолютное значение x; результат имеет такую же величину по модулю, что и x, но со знаком плюс.
Если x равен NaN, результат равен NaN.
Если x равен −0, результат равен +0.
Если x равен −∞, результат равен +∞.
Возвращает зависящее от реализации приблизительное значение арккосинуса от x. Результат выражается в радианах и имеет значение от +0 до +π.
Если x равен NaN, результат равен NaN.
Если x больше 1, результат равен NaN.
Если x меньше чем −1, результат равен NaN.
Если x равен ровно 1, результат равен +0.
Возвращает зависящее от реализации приблизительное значение арксинуса от x. Результат выражается в радианах и имеет значение от −π/2 до +π/2.
Если x равен NaN, результат равен NaN.
Если x больше 1, результат равен NaN.
Если x меньше чем –1, результат равен NaN.
Если x равен +0, результат равен +0.
Если x равен −0, результат равен −0.
Возвращает зависящее от реализации приблизительное значение арктангенса от x. Результат выражается в радианах и имеет значение от −π/2 до +π/2.
Если x равен NaN, результат равен NaN.
Если x равен +0, результат равен +0.
Если x равен −0, результат равен −0.
Если x равен +∞, результат равен зависящему от реализации приблизительному значению от +π/2.
Если x равен −∞, результат равен зависящему от реализации приблизительному значению от −π/2.
Возвращает зависящее от реализации приблизительное значение арктангенса от частного y/x аргументов y и x, где знаки для y и x используются для определения квадранта результата. Обратите внимание, что для этой функции арктангенса с двумя аргументами принято сначала указывать аргумент y, а затем – аргумент x. Результат выражается в радианах и имеет значение от −π до +π.
Если или x или y равен NaN, результат равен NaN.
Если y>0 и x равен +0, то результат равен зависящему от реализации приблизительному значению от +π/2.
Если y>0 и x равен −0, то результат равен зависящему от реализации приблизительному значению от +π/2.
Если y равен +0 и x>0, результат равен +0.
Если y равен +0 и x равен +0, результате равен +0.
Если y равен +0 и x равен −0, то результат равен зависящему от реализации приблизительному значению от +π.
Если y равен +0 и x<0, то результат равен зависящему от реализации приблизительному значению от +π.
Если y равен −0 и x>0, результат равен −0.
Если y равен −0 и x равен +0, результат равен −0.
Если y равен −0 и x равен −0, то результат равен зависящему от реализации приблизительному значению от −π.
Если y равен −0 и x<0, то результат равен зависящему от реализации приблизительному значению от −π.
Если y<0 и x равен +0, то результат равен зависящему от реализации приблизительному значению от −π/2.
Если y<0 и x равен −0, то результат равен зависящему от реализации приблизительному значению от −π/2.
Если y>0 и y является конечным числом, а x равен +∞, то результат равен +0.
Если y>0 и y является конечным числом, а x равен −∞, то результат равен зависящему от реализации приблизительному значению от +π.
Если y<0 и y является конечным числом, а x равен +∞, то результат равен −0.
Если y<0 и y является конечным числом, а x равен −∞, то результат равен зависящему от реализации приблизительному значению от −π.
Если y равен +∞ и x является конечным числом, то результат равен зависящему от реализации приблизительному значению от +π/2.
Если y равен −∞ и x является конечным числом, то результат равен зависящему от реализации приблизительному значению от −π/2.
Если y равен +∞ и x равен +∞, то результат равен зависящему от реализации приблизительному значению от +π/4.
Если y равен +∞ и x равен −∞, то результат равен зависящему от реализации приблизительному значению от +π/4.
Если y равен −∞ и x равен +∞, то результат равен зависящему от реализации приблизительному значению от −π/4.
Если y равен −∞ и x равен −∞, то результат равен зависящему от реализации приблизительному значению от −3π/4.
Возвращает наименьшее (ближайшее к −∞) числовое значение не меньше x и равное математическому целому. Если x уже является целым числом, возвращаемый результат равен x.
Если x равен NaN, результат равен NaN.
Если x равен +0, результат равен +0.
Если x равен −0, результат равен −0.
Если x равен +∞, результат равен +∞.
Если x равен −∞, результат равен −∞.
Если x меньше нуля и больше -1, результат равен −0.
Значение Math.ceil(x)
аналогично значению -Math.floor(-x)
.
Возвращает зависящее от реализации приблизительное значение косинуса от x. Аргумент выражается в радианах.
Если x равен NaN, результат равен NaN.
Если x равен +0, результат равен 1.
Если x равен −0, результат равен 1.
Если x равен +∞, результат равен NaN.
Если x равен −∞, результат равен NaN.
Возвращает зависящее от реализации приблизительное значение экспоненциальной функции от x (e в степени x, где e является основанием натуральных логарифмов).
Если x равен NaN, результат равен NaN.
Если x равен +0, результат равен 1.
Если x равен −0, результат равен 1.
Если x равен +∞, результат равен +∞.
Если x равен −∞, то результат равен +0.
Возвращает наибольшее (ближайшее к +∞) числовое значение не больше x и равное математическому целому. Если x уже является целым числом, возвращаемый результат равен x.
Если x равен NaN, результат равен NaN.
Если x равен +0, результат равен +0.
Если x равен −0, результат равен −0.
Если x равен +∞, результат равен +∞.
Если x равен −∞, результат равен −∞.
Если x больше нуля и меньше 1, результат равен +0.
ПРИМЕЧАНИЕ Значение Math.floor(x)
аналогично значению -Math.ceil(-x)
.
Возвращает зависящее от реализации приблизительное значение натурального логарифма от x.
Если x равен NaN, результат равен NaN.
Если x меньше чем 0, результат равен NaN.
Если x равен +0 или −0, результат равен −∞.
Если x равен 1, результат равен +0.
Если x равен +∞, результат равен +∞.
Принимая аргументы в количестве ноль или более, вызывает для каждого из аргументов абстрактную операцию ToNumber и возвращает наибольшее из полученных значений.
Если аргументы не передавались, результат равен −∞.
Если одно из значений равно NaN, результат равен NaN.
Сравнение значений для определения наибольшего производится в соответствии с пунктом 11.8.5, за исключением того, что +0 считается больше чем −0.
Свойство length
для метода max
равно 2.
Принимая аргументы в количестве ноль или более, вызывает для каждого из аргументов абстрактную операцию ToNumber и возвращает наименьшее из полученных значений.
Если аргументы не передавались, результат равен +∞.
Если одно из значений равно NaN, результат равен NaN.
Сравнение значений для определения наименьшего производится в соответствии с пунктом 11.8.5, за исключением того, что +0 считается больше чем −0.
Свойство length
для метода min
равно 2.
Возвращает зависящее от реализации приблизительное значение результата возведения x в степень y.
Если y равен NaN, результат равен NaN.
Если y равен +0, результат равен 1, даже если x равен NaN.
Если y равен −0, результат равен 1, даже если x равен NaN.
Если x равен NaN и y является ненулевым значением, результат равен NaN.
Если abs(x)>1 и y равен +∞, результат равен +∞.
Если abs(x)>1 и y равен −∞, результат равен +0.
Если abs(x)==1 и y равен +∞, результат равен NaN.
Если abs(x)==1 и y равен −∞, результат равен NaN.
Если abs(x)<1 и y равен +∞, результат равен +0.
Если abs(x)<1 и y равен −∞, результат равен +∞.
Если x равен +∞ и y>0, результат равен +∞.
Если x равен +∞ и y<0, результат равен +0.
Если x равен −∞ и y>0, и y является нечётным целым числом, результат равен −∞.
Если x равен −∞ и y>0, и y не является нечётным целым числом, результат равен +∞.
Если x равен −∞ и y<0, и y является нечётным целым числом, результат равен −0.
Если x равен −∞ и y<0, и y не является нечётным целым числом, результат равен +0.
Если x равен +0 и y>0, результат равен +0.
Если x равен +0 и y<0, результат равен +∞.
Если x равен −0 и y>0, и y является нечётным целым числом, результат равен −0.
Если x равен −0 и y>0, и y не является нечётным целым числом, результат равен +0.
Если x равен −0 и y<0, и y является нечётным целым числом, результат равен −∞.
Если x равен −0 и y<0, и y не является нечётным целым числом, результат равен +∞.
Если x<0, и x является конечным числом, и y является конечным числом, и y не является целым числом, результат равен NaN.
Возвращает числовое значение с положительным знаком, больше или равно нулю и меньше 1, выбранное случайно или псевдослучайно с приблизительно равномерным распределением по указанному диапазону, используя алгоритм или стратегию, зависящие от реализации. Эта функция не принимает никаких аргументов.
Возвращает числовое значение, ближайшее к x и равное математическому целому. Если одинаково близкими к x являются два целочисленных значения, результатом будет являться то из них, которое ближе к +∞. Если x уже является целым числом, возвращаемый результат равен x.
Если x равен NaN, результат равен NaN.
Если x равен +0, результат равен +0.
Если x равен −0, результат равен −0.
Если x равен +∞, результат равен +∞.
Если x равен −∞, результат равен −∞.
Если x больше нуля и меньше 0,5, результат равен +0.
Если x меньше нуля и больше или равно -0,5, то результат равен −0.
ПРИМЕЧАНИЕ 1 Math.round(3.5)
возвращает 4, а Math.round(–3.5)
возвращает –3.
ПРИМЕЧАНИЕ 2 Значение Math.round(x)
аналогично значению Math.floor(x+0.5)
, кроме случаев, когда x
равен −0, или меньше 0, но больше или равен -0.5. В этих случаях Math.round(x)
возвращает −0, а Math.floor(x+0.5)
возвращает +0.
Возвращает зависящее от реализации приблизительное значение синуса от x. Аргумент выражается в радианах.
Если x равен NaN, результат равен NaN.
Если x равен +0, результат равен +0.
Если x равен −0, результат равен −0.
Если x равен +∞ или −∞, результат равен NaN.
Возвращает зависящее от реализации приблизительное значение квадратного корня из x.
Если x равен NaN, результат равен NaN.
Если x меньше чем 0, результат равен NaN.
Если x равен +0, результат равен +0.
Если x равен −0, результат равен −0.
Если x равен +∞, результат равен +∞.
Возвращает зависящее от реализации приблизительное значение тангенса от x. Аргумент выражается в радианах.
Если x равен NaN, результат равен NaN.
Если x равен +0, результат равен +0.
Если x равен −0, результат равен −0.
Если x равен +∞ или −∞, результат равен NaN.