- •Часть I. Язык сценариев JavaScript 3
- •Часть II. Среда клиента 73
- •Часть III. Динамический html 95
- •Клиентское Web-программирование
- •Часть I. Язык сценариев JavaScript Урок 1. Модель клиент-сервер в Интернете Распределенные системы и приложения
- •Http-запрос
- •Http-ответ
- •Урок 2. Сценарии JavaScript в документах html Языки сценариев
- •Язык JavaScript
- •Основные положения синтаксиса
- •Размещение операторов языка на странице
- •Упражнения
- •Урок 3. Переменные и литералы
- •Числовой тип
- •Строковый тип
- •Булевый тип
- •Специальные типы данных
- •Переменные
- •Определение типа переменной
- •Упражнения
- •Урок 4. Выражения и операции
- •Арифметические операции
- •Логические выражения
- •Строковые операции
- •Комбинированные операции присваивания
- •Условная операция
- •Приоритет операций
- •Упражнения
- •Урок 5. Операторы
- •Операторы выбора
- •Операторы цикла
- •Упражнения
- •Урок 6. Функции
- •Упражнения
- •Урок 7. Встроенные объекты (1)
- •Объект Array
- •Объект Date
- •Объект Math
- •Объект String
- •Объект Function
- •Объект Boolean
- •Объект Number
- •Упражнения
- •Урок 8 Встроенные объекты (2) Объект Object
- •Стандартные функции верхнего уровня (объект Global)
- •Манипулирование объектами
- •Обработка ошибок
- •Упражнения
- •Урок 9. Создание собственных объектов
- •Упражнения
- •Часть II. Среда клиента Урок 10. Объектная модель ms Internet Explorer
- •Объект window
- •Объект navigator
- •Объект location
- •Объект history
- •Упражнения
- •Урок 11. Объекты доступа к странице и ее элементам Объект document
- •Объект body
- •Объект form
- •Упражнения
- •Урок 12. Обработка событий в ms Internet Explorer Обработчики событий
- •Вызов процедуры обработки события
- •Событийная модель
- •Объект event (ie)
- •Упражнения
- •Часть III. Динамический html Урок 13. Объектная модель документа dhtml
- •Структура документа
- •Иерархия объектов
- •Свойства и методы объектов
- •Упражнения
- •Урок 14. Примеры динамических страниц html Раскрывающийся список
- •Движущийся элемент
- •Динамическое изменение таблиц
- •Родственные отношения
- •Упражнения
- •Урок 15. Объектная модель документа dom
- •Узлы объектной модели dom
- •Перемещение по объектной модели
- •Изменение объектной модели документа
- •Упражнения
Логические выражения
Для создания логических выражений используются операции сравнения и логические операции, применяемые к переменным любого типа.
Операции сравнения
Операция |
Синтаксис |
Описание |
== |
a == b |
Истина, если оба операнда равны |
=== |
a === b |
true, если значения операндов равны и сами операнды одного типа |
!= |
a != b |
Не равно |
!== |
a !== b |
true, если значения операндов не равны и/или они не одного типа |
>= |
a >= b |
Больше или равно |
<= |
a <= b |
Меньше или равно |
> |
a > b |
Строго больше |
< |
a < b |
Строго меньше |
Логические операции
Операция |
Синтаксис |
Описание |
&&
|
a && b |
логическое И Возвращает a, если оно преобразуется к false, иначе b |
||
|
a || b |
логическое ИЛИ Возвращает a, если оно преобразуется к true, иначе b |
!
|
!a |
логическое НЕ Если a равно true, возвращает false; если a равно false, возвращает true |
Вычисляются по укороченной схеме — если результат операции становится известным после вычисления первого операнда, то второй операнд вообще не вычисляется. В следующих выражениях второй операнд вычисляться не будет, так как результат их вычисления уже определен значением первого операнда вне зависимости от значения второго:
false && операнд2 // всегда равно false
true || операнд2 // всегда равно true
Битовые логические операции
Операция |
Синтаксис |
Описание |
И |
a & b |
Результирующий бит равен 1, если оба равны 1, иначе 0 |
ИЛИ |
a | b |
Результирующий бит равен 1, если хотя бы один бит равен 1 |
Исключающее ИЛИ |
a ^ b |
Результирующий бит равен 1, если хотя бы один бит равен 1, но не оба одновременно |
Отрицание |
~a |
Инвертирует биты |
Смещение влево |
a << n |
Сдвигает все биты влево на n позиций, добавляя справа нулевые |
Смещение вправо |
a >> n |
Сдвигает все биты вправо на n позиций, используя значение знакового бита для заполнения "освобождаемых" слева битов |
Смещение вправо с заполнением нулями |
a >>> n |
Сдвигает все биты вправо на n позиций, заполняя "освобождаемые" слева биты нулями |
Строковые операции
Существует только одна строковая операция – операция конкатенации (соединения) строк +, если не считать сокращенной формы операции присваивания со сложением += и сравнения строк.
string = "Моя" + "строка"; // string равно "Моястрока"
Операция конкатенации строк может использоваться со смешанными типами операндов. Все операнды приводятся к строковому типу, если хотя бы один из операндов содержит строковый литерал.
"Май" + 2.003е3 результат "Май2003",
"Май" + t результат "Майtrue", если переменная t содержит
булево значение true.
"1"+"1.1" результат "11.1"
"1"+1.1 результат "11.1"
