
- •Лабораторная работа №7
- •7.4. Теоретические сведения
- •7.4.1. JavaScript – язык программирования сценариев
- •7.4.2. Типы данных
- •7.4.3. Переменные
- •7.4.4. Литералы
- •7.4.4.1. Целые числа (Integers)
- •7.4.4.2. Литералы с плавающей точкой
- •7.4.4.3. Логические литералы
- •7.4.4.4. Строки
- •7.4.4.5. Специальные символы
- •7.4.5. Выражения
- •7.4.6. Операторы
- •7.4.6.1. Арифметические Операторы
- •7.4.6.2. Побитовые операторы
- •7.4.6.3. Логические операторы
- •Вычисление...
- •7.4.6.5. Операторы Строки
- •7.4.7. Создание сценариев
- •7.4.7.1. Использование JavaScript в html
- •7.4.7.2. Тег script
- •7.4.7.3. Определение и запрос функций
- •7.4.7.4. Тег html
- •7.4.7.5. Создание скриптов обработчиков событий
- •7.4.8. Использование встроенных объектов и функций
- •7.4.8.1. Использование Объекта String
- •7.4.8.2. Использование Объекта Math
- •7.4.8.3. Использование Объекта Date
- •7.4.8.4. Использование Встроенных функций
- •Функция eval
- •Функции parseInt и parseFloat
- •7.5. Пример разработки программы на php с использованием сценариев JavaScript
- •7.6. Указания по организации самостоятельной работы студентов
- •7.7. Контрольные вопросы
7.4.8. Использование встроенных объектов и функций
7.4.8.1. Использование Объекта String
Всякий раз, когда приписывается значение строки переменной или свойству, создается объект string. Литералы строки - также объекты string. Например, утверждение
mystring = "Hello, World!"
Создает строковый объект mystring. Литерал "blah" - также строковый объект.
Объект string имеет методы, которые возвращают:
Изменение строки непосредственно, типа substring и toUpperCase.
HTML форматирование строки, типа bold и link.
Например, данный вышеупомянутый объект, mystring.toUpperCase() возвращает "Hello, World!", и то же делает "Hello, World!".toUpperCase ().
7.4.8.2. Использование Объекта Math
Встроенный объект Math имеет свойства и методы для математических констант и функций. Например, PI свойство объекта Math имеет значение pi, которое можно применять так:
Math. PI
Точно так же стандартные математические функции - методы Math.
Они включают тригонометрические, логарифмические, экспоненциальные, и другие функции. Например, использование функции тригонометрического синуса, выглядит так
Math.sin (1.56)
Замечание, что все аргументы тригонометрических методов Math в радианах.
Часто удобно использовать утверждение with, когда раздел кода использует несколько математических констант и методов, поэтому вы можете не писать несколько раз "Math". Например,
with (Math) {
a = PI * r*r;
y = r*sin(theta)
x = r*cos(theta)
}
Таблица 2
Свойства объекта Math
Название |
Описание |
abs |
Модуль |
sin |
Тригонометрические функции |
cos |
|
tan |
|
asin |
Обратные тригонометрические функции |
acos |
|
atan |
|
exp |
Экспонента |
log |
Логарифм |
round |
Округление |
floor |
Целое число, которое меньше или равно аргументу |
pow |
Степень |
sqrt |
Корень квадратный |
min |
Меньшее из двух аргументов |
max |
Большее из двух аргументов |
Рассмотрим пример: необходимо найти вторую степень меньшего из двух чисел:
<script >
x = Math.pow(Math.min(16, 5),2);
document.write("Результат выражения Math.pow(Math.min(16, 5),2): " + x);
</script>
Рис. 6. Результат выполнения скрипта
7.4.8.3. Использование Объекта Date
JavaScript не имеет данных типа date. Однако, объект date и его методы позволяют работать с датами и временами в приложениях. Объект date имеет большое количество методов для установления, получения, и управления датами. Он не имеет никаких свойств.
JavaScript обрабатывает date очень похоже на обрабатывание в Java. Два языка имеют многие из тех же самых методов date, и оба языка сохраняютdate как число миллисекунд начиная с 1 января, 1970 00:00:00.
Создание объект date:
varName = new Date(parameters)
Где varName - имя переменной JavaScript для создаваемого объекта date; это может быть новый объект или свойства существующего объекта.
Параметры Date могут быть следующие:
Ничего: создает сегодняшнюю дату и время. Например:
<script >
var todayDate = new Date();
document.write("Сегодня " + todayDate);
</script>
Рис. 7. Результат вывода текущей даты и времени
Строка, представляющая дату в следующей форме: " Month day, year hours:minutes:seconds". Например, Xmas95= new Date("December 25, 2007 13:30:00"). Если опускается значение часов, минут, или секунд, то будет установлено значение нуль.
Множество целых чисел для year, month, и day. Например, Xmas95 = new Date(2007,11,25)
Множество значений для for year, month, day, hour, minute, и seconds. Например, Xmas07 = new Date(2007,11,25,9,30,0)
Объект Date имеет большое количество методов для обработки дат и времен. Методы относятся к этим широким категориям:
"set" методы, для установки даты и времени в объектах date
"get" методы, для получения значений даты и времени из объектов date
"to" методы, для возвращающегося ряда из объектов date.
Синтаксический анализ и UTC методы, для синтаксического анализа строковых date.
Методы "get" и "set" позволяют вам получать и управлять секундами, минутами, часами, днем месяца, днем недели, месяцами, и гадами отдельно. Имеется метод getDay, который возвращает день недели, но не соответствующий методу setDay, потому что день недели устанавливается автоматически. Эти методы используют целые числа, чтобы представить значения следующим образом:
Секунды и минуты: от 0 до 59
Часы: от 0 до 23
День: от 0 до 6 (день недели)
Дата: от 1 до 31 (день месяца)
Месяцы: от 0 (январь) до 11 (декабрь)
Год: годы начиная с 1900
Например, пусть вы определяете date следующим образом:
Xmas07 = new Date("December 25, 2007")
Затем Xmas07.getMonth () возвращает 11, и Xmas07.getYear () возвращает 2007.
Методы getTime и setTime полезны для сравнения дат. Метод getTime возвращает число миллисекунд начиная с периода для объекта даты.
Например, следующий код показывает сколько дней осталось до 8-го марта:
<script >
today = new Date();
nextMarch = new Date("March 8, 2008");
nextMarch.setYear(today.getYear());
msPerDay = 24 * 60 * 60 * 1000 ; // Количество милисекунд в дне
daysLeft = (nextMarch.getTime() - today.getTime()) / msPerDay;
daysLeft = Math.round(daysLeft);
document.write("Текущая дата: " + today+ "<br>");
document.write("До следующего 8-го марта осталось: " + daysLeft+ " дня");
</script>
Рис.8. Результат работы программы
Этот пример создает объект date today, который содержит сегодняшнюю дату. Затем создается объект date nextMarch, устанавливающий год, текущего года. Затем, используя число миллисекунд в день, вычисляется число дней между today и nextMarch, используя getTime, и округляя до целого числа дней.