HTML: Популярный самоучитель | страница 95
Приоритет операторов
Все операторы, которые могут быть использованы в выражениях, имеют свой приоритет, который учитывается при определении очередности вычисления значений подвыражений. Ниже приведен список операторов согласно их приоритету (от наивысшего к самому низкому).
1. ++, –, – (унарный), ~, !, typeof.
2. *, /, %.
3. +, -.
4. <<, >>, >>>.
5. >, >=, <, <=.
6. ==, !=, ===.
7. &.
8. ^.
9. |.
10. &&.
11. ||.
12. =, +=, –=, *=, /=, %=, &=, |=, ^=.
Несмотря на приоритет операторов, очередность вычисления подвыражений может быть изменена использованием скобок () любой вложенности. Выражение, заключенное в скобки, всегда вычисляется раньше других на том же уровне вложенности.
Условные операторы
При программировании на JavaScript можно использовать три условных оператора: if, select и оператор ? (именно вопросительный знак). Последний из операторов является самым простым, поэтому рассмотрим его в первую очередь.
Оператор ? используется как сокращенная версия оператора if при необходимости рассчитать значение одного из двух выражений в зависимости от истинности или ложности условия. Оператор имеет следующий формат:
условие ? выражение1 : выражение2
Здесь условие – логическое выражение (результат true или false). Выражение1 вычисляется в случае истинности выражения условие, иначе вычисляется значение выражения выражение2. Оператор ? возвращает значение (подобно любому другому оператору, например = или *), равное значению вычисленного выражения. Ниже приведено несколько примеров использования оператора ? (для большей наглядности выражения часто заключают в скобки):
a = (b > 3) ? b : 3; //Значение переменной a будет не меньше 3
a = (text == "continue") ? (a+=2) : a;
Следующим рассмотрим оператор if, который позволяет выбрать выполнение одной из двух последовательностей операторов в зависимости от истинности или ложности выражения‑условия. Оператор if имеет следующий формат:
if (условие) оператор1
else оператор2
Если значение выражения условие равно true, то выполняется оператор1 (это может быть как простой, так и составной оператор), в противном случае выполняется оператор2 (также или простой, или составной оператор). Часть else оператор2 является необязательной. Ниже приведено несколько примеров использования оператора if:
if (b != 0) a /= b; //Проверяется отсутствие деления на ноль
else {
//Какие-то действия по информированию (в данном случае ничего)