Выражения строятся из литералов, переменных, знаков операций, скобок. В результате вычисления выражения получается единственное значение, которое может быть либо числом (целым или вещественным), либо строкой, либо логическим значением. Используемые в выражении переменные должны быть инициализированы. Если при вычислении выражения встречается неопределенная или неинициализированная переменная, то фиксируется ошибка. В JavaScript существует литерал null для обозначения неопределенного значения. Если переменной присвоено значение null, то она считается инициализированной.
Выражения формируются из операндов и обозначений операций. Например, в формуле a*b операндами являются a и b, обозначением операции — знак *.
Операции делятся на унарные (одноместные) или бинарные (двуместные). Выражение записывается либо в виде ÅA, если Å — обозначение унарной операции, либо AÅB, если Å — обозначение бинарной операции. Вычисление выражения ÅA сводится к вычислению операнда A и применению операции Å к значению операнда. Вычисление выражения вида AÅB состоит из следующих шагов:
1. Вычисляются A и B.
2. Операция Å применяется к значению операндов, полученных на шаге 1.
В зависимости от типа вычисленного значения выражения можно разделить на арифметические, логические и строковые. Арифметические выражения получаются при выполнении операций, перечисленных в табл. 1.1.
Таблица 1.1. Арифметические операции
| Операция | Название |
| + | Сложение |
| - | Вычитание |
| * | Умножение |
| / | Деление |
| % | Остаток от деления целых чисел |
| ++ | Увеличение значения операнда на единицу |
| -- | Уменьшение значения операнда на единицу |
Операторы в выражении вычисляются слева направо в соответствии с приоритетами арифметических операций. При необходимости с помощью скобок можно изменить порядок выполнения операций. В языке JavaScript определены операторы, в которых производятся арифметические действия над левым и правым операндом и результат присваивается переменной, заданной левым операндом. Операции так называемой сокращенной формы присваивания представлены в табл. 1.2.
Таблица 1.2. Сокращенные формы оператора присваивания
| Оператор | Эквивалентный оператор присваивания |
| X += Y | X = X+Y |
| X -= Y | X = X-Y |
| X *= Y | X = X*Y |
| X /= Y | X = X/Y |
| X %= Y | X = X%Y |
Операции отношения применимы к операндам любого типа. Результат операции - логическое значение true, если сравнение верно, и false — в противном случае. Перечислим операции сравнения:
- < (меньше);
- <= (меньше или равно);
- = = (равно);
- ! = (не равно);
- >= (больше или равно);
- > (больше).
Операция! (логическое НЕ) применяется к операндам логического типа, если значение операнда a равно true, то значение выражения!a — false, если значение операнда a равно false, то значение выражения!a — true. Результат применения логических операций && (логическое И) и || (логическое ИЛИ) приведен в табл. 1.3.
Таблица 1.3. Логические операции
| A | B | A&&B | A| |B |
| true | true | true | true |
| true | false | false | true |
| false | true | false | true |
| false | false | false | false |
Значение выражения A&&B истинно, если истинны оба операнда, и ложно в противном случае. Значение выражения A||B истинно, если значение хотя бы одного из операндов истинно, и ложно в противном случае.
Над строковыми значениями определена операция конкатенация (соединение) строк. Обозначается операция знаком плюс. Результатом выполнения этой операции является строка, состоящая из строковых значений операндов, например, в результате выполнения оператора присваивания
st = "текущее "+"состояние"
переменная st получит значение "текущее состояние".
Рассмотрим еще один пример. Пусть выполнено
st1 = "текущий "
st2 = "момент"
В результате выполнения
st1 += st2
переменная st1 получит значение "текущий момент".
Приоритет операций определяет порядок, в котором выполняются операции в выражении. В табл. 1.4 перечислены рассмотренные операции в порядке убывания приоритетов.
Таблица 1.4. Таблица приоритетов операций
| Название | Обозначение |
| Инкремент | ++ |
| Декремент | -- |
| Отрицание | ! |
| Унарный минус | - |
| Умножение | * |
| Деление, остаток от деления | /, % |
| Сложение | + |
| Вычитание | -- |
| Сравнение | <, >, <=, >= |
| Равенство | = = |
| Неравенство | != |
| Логическое И | && |
| Логическое ИЛИ | | | |
| Присваивание | =, +=, -=, *=, /=, %=,!= |
Web-страницы можно создавать с помощью языка HTML. При создании страницы можно использовать формы, которые позволяют читателям страниц общаться с их авторами.
В сети Интернет представлено много форм, которые используются в анкетах, например, при проведении различных опросов. Форму заполняет пользователь при регистрации на сервере. С помощью форм осуществляется тестирование. Форму можно рассматривать как бланк, в котором предусмотрены свободные места для внесения необходимой информации. После заполнения формы она может обрабатываться либо на стороне сервера, либо на стороне клиента.
Будем использовать формы, как для ввода данных, так и для представления результатов работы сценариев.
Первые простые сценарии продемонстрируют обработку данных, введенных пользователем в текстовые поля формы. Обработка данных будет осуществляться с помощью сценария JavaScript.






