Операторы VBScript
VBScript имеет полный набор операторов, включая арифметические и логические операторы, операторы сравнения и конкатенации. Когда в одном выражении встречаются несколько операторов, то определяется порядок выполнения этих операторов. Такой порядок выполнения всех операторов называется приоритетом операторов. Для того, чтобы пренебречь приоритетом выполнения операторов можно использовать скобки. Тогда операторы в скобках всегда будут выполнятся перед выполнением других операторов. Внутри скобок соблюдается приоритет выполнения операторов. Если выражение содержит операторы различных типов, то в этом случае первыми выполняются арифметические операторы, следующими выполняются операторы сравнения и, затем, логические операторы. Операторы сравнения всегда имеют равный приоритет, поэтому они выполняются слева направо. Арифметические и логические операторы имеют приоритет выполнения, который показан ниже в таблице 3.5 (операторы указаны в порядке убывания приоритета).
Таблица 3.5. Операторы языка VBScript
Арифметические операторы | Операторы сравнения | Логические операторы | |||
Описание | Обозна-чение | Описание | Обозна-чение | Описание | Обозна-чение |
Возведение в степень | ^ | Равенство | = | Логическое отрицание | Not |
Изменение знака | - | Неравенство | <> | Конъюнкция | And |
Умножение | * | Меньше | < | Дизъюнкция | Or |
Деление | / | Больше | > | Исключение | Xor |
Целочисленное деление | \ | Меньше или равно | <= | Логическая эквивалентность | Eqv |
Деление по модулю | Mod | Больше или равно | >= | Логическая импликация | Imp |
Сложение | + | Эквивалентность объектов | Is | ||
Вычитание | - | ||||
Сложение строк (конкатенация) | & |
Когда в одном выражении встречаются операторы умножения и деления или сложения и вычитания, то они выполняются последовательно слева направо. Оператор конкатенации строк (&) неарифметический оператор, но он имеет такой приоритет, что выполняется после всех арифметических операторов и перед операторами сравнения. Оператор Is - оператор сравнения объектов. Этот оператор не сравнивает объекты или их значения, а только проверяет, ссылаются ли две объектные ссылки на один и тот же объект или нет.