Объект без которого затруднена работа, связанная с математическими вычислениями - это Math. Все его свойства – это математические константы. Методы – это различные математические функции. Следует отметить, что этот объект не требует создания. Мы не будем рассматривать подробно его работу, все свойства и методы понятны и не требуют особых комментариев. Рассмотрим один простой пример, который выводит случайным образом сообщения: Пример 32
На самом деле все сообщения предопределены и находятся в массиве:
mes=new Array("Привет! Добро пожаловать!","Ну и ...!","Здрасьте","Это моя дипломная работа","Как погодка?","Это 6-ое сообщение","А это седьмое сообщение","Восьмое сообщение","И все таки она вертится", "Прошу всех встать, суд идёт");
Необходимо просто извлекать эти сообщения из массива случайным образом. Для этого необходимо генерировать каждый раз новое случайное число, которое и будет указывать номер сообщения. Сообщений всего 10, но нумерация массива идёт с 0. Число должно изменятся с 0 до 9. Для генерирования случайного числа будем использовать метод random() объекта Math. Этот объект возвращает случайное число из промежутка 0 включительно до 1 исключительно. Следовательно, чтобы получить числа от 0 до 9 необходимо число, которое вернёт random() умножить на 10:
sch=(Math.random() * 10);
Таким образом, каждый раз при обновлении окна (точнее при вызове функции) переменная sch будет содержать случайное, дробное число, которое больше или равно 0, но меньше 10. Но индекс массива – это число целое, следовательно, необходимо возвратить ближайшее целое число. Для этих целей объект Math располагает двумя методами: ceil(число) и floor(число). Метод ceil(число) возвращает ближайшее большее целое число к числу, которое передано в качестве параметра. Нам этот метод в данном случае не годится, т.к. если, например, переменная sch будет равна 9.345, то ceil(sch) вернёт значение 10. А последний элемент массива имеет номер 9, следовательно, возможна ошибка выхода за рамки массива. Поэтому в нашем слудчае целесообразно использовать метод floor(число) который в указаном выше случае вернёт 9.
mesno=Math.floor(sch);
Таким образом, переменная mesno каждый раз будет иметь новое целое значение не превосходящее 9. Теперь достаточно вывести сообщение с номером mesno из массива mes:
alert(mes[mesno]);
Как видим, работа с объектом Math не вызывает затруднений и поэтому перейдём к следующему важному объекту.