Урок 6. Объект math в javascript — КиберПедия 

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Урок 6. Объект math в javascript

2017-08-26 225
Урок 6. Объект math в javascript 0.00 из 5.00 0 оценок
Заказать работу

Как уже было сказано, в javascript определены некоторые стандартные объекты и функции. Сегодня мы рассмотрим объект math и его методы.

Объект math работает с математическими функциями, а его методы можно использовать для вызова этих функций. Ниже представлены некоторые методы объекта math:

метод описание
abs абсолютное значение
sin, cos, tan тригонометрические функции
log натуральный логарифм
exp экспонента
pow показательная функция
sqrt квадратный корень
min наименьшее значение
max наибольшее значение

 

Какие-то методы вы будете использовать часто, какие-то редко, а некоторые вам и вовсе не пригодятся. Рассмотрим пример использования объекта math.

Предположим мы хотим написать сценарий, который будет вычислять площадь треугольника по трем его сторонам. Для этого нам потребуется использовать формулу Герона:

Для тех, кто давно окончил школу, напоминаю:
S - площадь
a, b, c - длины сторон треугольника

Итак, напишем в html-странице код формы:

<html> <head> <title>math javascript</title> <link rel="stylesheet" type="text/css" href="style1.css"> <script type="text/javascript" src="script.js"></script> </head> <body> <form name="forma3"> Сторона 1 <input type="text" size="8" maxlength="8" name="st1"> Сторона 2 <input type="text" size="8" maxlength="8" name="st2"> Сторона 3 <input type="text" size="8" maxlength="8" name="st3"><br><br> <input type="button" value="Вычислить" onClick="areaOfTriangle(forma3);"> <input type="reset" value="Отменить"> Результат <input type="text" size="8" maxlength="8" name="res"> </form> </body> </html>

Здесь нет ничего нового. Теперь на странице script.js напишем код функции:

function areaOfTriangle(obj){ var a=1*obj.st1.value; var b=1*obj.st2.value; var c=1*obj.st3.value; var p=(a+b+c)/2; var s=Math.sqrt(p*(p-a)*(p-b)*(p-c)); obj.res.value=s;}

Здесь мы использовали объект Math и его метод sqrt для извлечения квадратного корня. Выражение, из которого извлекается корень, должно быть взято в скобки.

Также обратите внимание на первые три строчки функции, они начинаются с 1*, т.е. наши переменные a, b, c мы умножили на единицу. Зачем? Помните, в первом уроке мы говорили о том, что у каждой переменной есть тип, который определяется автоматически. Так как наши переменные приходят из текстового поля, то и тип они имеют string, т.е. они воспринимаются функцией не как числа, а как буквы.

Если бы мы перемножали эти переменные, то их тип автоматически переопределился бы к number, но мы их складываем, а знак операции + расценивается в данном случае, как конкатенация строк. Чтобы этого не происходило, мы и умножили наши переменные на единицу, преобразовав их таким образом к типу number. Ради эксперимента уберите умножение на единицу в этих трех строках и посмотрите, что "насчитает" сценарий. Затем верните правильный вариант и убедитесь, что все работает правильно, как в примере ниже.


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

Чтобы округлить результат до N знаков после запятой можно воспользоваться методом toFixed объекта Number. Синтаксис записи следующий:

(x).toFixed(N)

где x - число, которое надо округлить, а N - число знаков после запятой.

Давайте исправим конец нашей функции и округлим результат до 2 знаков после запятой:

function areaOfTriangle(obj){ var a=1*obj.st1.value; var b=1*obj.st2.value; var c=1*obj.st3.value; var p=(a+b+c)/2; var s=Math.sqrt(p*(p-a)*(p-b)*(p-c)); s=s.toFixed(2); obj.res.value=s;}

Вот теперь все аккуратненько:



Вот на сегодня и все, для тренировки поэкспериментируйте с другими методами объекта math.


Поделиться с друзьями:

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.006 с.