Добавляем...


 Обьект Math
   Объект Math содержит множество констант и методов, позволяя выполнять более сложные математические действия по сравнению с основными арифметическими операциями, обсуждавшимися в ранее. В отличие от объектов Array и Date, нельзя создавать экземпляры объекта Math. Объект Math является статическим (т.е. он автоматически создается интерпретатором), поэтому его свойства доступны непосредственно. Например, чтобы вычислить квадратный корень из 10, можно непосредственно использовать метод sqrt() объекта Math:

var root = Math.sqrt(10);

В табл. представлен полный список констант, предлагаемых объектом Math.
Свойство Описание
Math.E Основание натурального логарифма (константа Эйлера е)
Math.LN2 Натуральный логарифм числа 2
Math.LN10 Натуральный логарифм числа 10
Math.LOG2E Логарифм (по основанию 2) числа е
Math.LOG10E Логарифм (по основанию 10) числа е
Math.PI Число π
Math.SQRT1_2 Квадратный корень числа 0,5 (или, что то же самое, единица, деленная на корень из 2)
Math.SQRT2 Квадратный корень из числа 2

Полный список математических методов этого объекта приведен тут.

Метод Возвращаемые результаты
Math.abs(arg) Абсолютное значение arg
Math.acos(arg) Арккосинус arg
Math.asin(arg) Арксинус arg
Math.atan(arg) Арктангенс arg
Math.atan2(у,х) Угол между осью абсцисс и направлением, задаваемым точкой (х, у), отсчитываемый против часовой стрелки (как в полярных координатах). Обратите внимание: у передается первым аргументом, а не вторым
Math.ceil(arg) Округление значения arg до целого сверху (наименьшее целое, большее или равное arg)
Math.cos(arg) Косинус arg
Math.exp(arg) Число е в степени arg
Math.floor(arg) Округление значения arg до целого снизу (наибольшее целое, не превышающее arg)
Math.log(arg) Натуральный логарифм arg (логарифм значения arg по основанию е)
Math.max(arg1, arg2) Большее из arg1 и arg2
Math.min (arg1, arg2) Меньшее из агg1 и а arg2
Math.pow(arg1, arg2) arg1 в степени arg2
Math.random() Случайное число из интервала [0,1]
Math.round(arg) Округление значения arg к ближайшему целому. Если дробная часть arg больше или равна . 5, происходит округление сверху, иначе arg округляется снизу
Math.sin(arg) Синус arg
Math.sqrt(arg) Квадратный корень из arg
Math.tan(arg) Тангенс arg


Следует помнить о некоторых особенностях объекта Math. Тригонометрические методы выполняют вычисления в радианах, поэтому перед использованием значений в градусах вы должны умножить их на π/180. Кроме того, из-за неточности операций с плавающей точкой, могут обнаружиться небольшие отклонения от ожидаемых результатов. Например, хотя известно, что синус числа π равен 0, программный код

alert(Math.sin(Math.PI));

результататом выполнения будит:

1.2246Q63538223772e-l6

Это значение очень близко к нулю, но достаточно велико для того, чтобы создать проблемы в случае чувствительных вычислений. Может показаться, что Math не позволяет вычислять логарифмы с основаниями, отличными от е. В самом деле, непосредственно это не делается. Но математическое тождество

loga n = (logen) / (logea)

можно использовать для вычисления логарифмов с произвольным основанием. Например, можно вычислить логарифм числа 64 по основанию 2 так:

var х = Math.log(64) / Math.log(2);


Случайные числа

   Метод Math.random() возвращает значения между нулем и единицей, поэтому придется нормализировать возвращаемое значение в соответствии с диапазоном значений, требующихся для вашего приложения. Проще всего получить случайные целые числа из диапазона от т до п (включительно) следующим образом:

Math.round(Math.random() * (n - m)) + m;

Так что для имитации бросания игральной кости можно использовать

roll = Math.round(Math.random() * (6-1)) + 1;

Генерирование случайных чисел в этой форме будет достаточным для большинства приложений, но если требуется "высококачественная" случайность, следует использовать более совершенные средства.

Упрощение математических вычислений

   При активной работе с объектом Math может пригодиться оператор with. Его использование позволяет обращаться к свойствам Math без добавления к ним префикса "Math". Эта возможность иллюстрируется следующим примером (вычисление стороны треугольника по теореме косинусов):

with (Math)
{
var а = 3, b = 4, с;
var angleA = atan(a / b) ;
var angleB = atan(b / a);
var angleC = PI / 2;
cos(angleC);
с = pow(a, 2) + pow(b, 2) - 2 * a * b * cos(angleC);
с = sqrt (c);
}

назад: далее:


добавить комментарий
(без перезагрузки и регистрации)


10 случайных разделов

Что ищем на сайте ?


Примеры кода на сайте







@ 2008-2011 Amber
При использовании материалов ссылка на сайт обязательна
Яндекс.Метрика